복붙노트

[HADOOP] HBase를 REST 호출 - 점점 정크 문자 "\ X0A"

HADOOP

HBase를 REST 호출 - 점점 정크 문자 "\ X0A"

나는 아래에 있습니다 .. HBase를 REST API 호출을 사용하여 HBase를 테이블에 값을 삽입하려고 내가 사용하고 컬 명령입니다 해요 ..

curl -v -XPUT 'http://localhost:8080/emp/1/pers:name' -H "Accept: application/json" -H "Content-Type: application/json" --data '{ "Row": [ { "Cell": [ { "column": "cGVyczpuYW1lCg==", "$": "TXlOYW1lCg==" } ], "key": "MQo=" } ] }'

통화가 잘 작동하고 나는 "HTTP / 1.1 200 OK"를 얻을 ..하지만 난 대신 "1"행의 값을 업데이트하는의 HBase를 테이블을 볼 때, 호출은 새 행 "1 \ X0A"을 작성하고 삽입 같은 정크 문자로 새로운 값 ..

1\x0A    column=pers:name\x0A, timestamp=1437596697507, value=MyName\x0A

누구나 이런 일을 본 적있어? 미리 감사드립니다 ..

해결법

  1. ==============================

    1.좋아, 나는이 밖으로 정렬 .. \ X0A는 탈출 진수 줄 바꿈이다. \ n의 등가 .. 우리가 인코딩을 BASE64 때, \ 소요 n 개의 계정으로 문자를 탈출 .. 그래서 우리는 우리가 rowkey, 열 및 값을 인코딩 BASE64 때 "-n"를 전달해야 ..

    좋아, 나는이 밖으로 정렬 .. \ X0A는 탈출 진수 줄 바꿈이다. \ n의 등가 .. 우리가 인코딩을 BASE64 때, \ 소요 n 개의 계정으로 문자를 탈출 .. 그래서 우리는 우리가 rowkey, 열 및 값을 인코딩 BASE64 때 "-n"를 전달해야 ..

    예를 들어 :

    echo -n MyName | base64
    TXlOYW1l
    echo MyName | base64
    TXlOYW1lCg==
    

    이 둘 사이에 차이가 .. 내 문제의 원인이 무엇인지 이잖아 ..

  2. from https://stackoverflow.com/questions/31573506/hbase-rest-call-getting-junk-characters-x0a by cc-by-sa and MIT license