자바 API를 통해 HBase 테이블을 만들고 Put을 통해 데이터를 추가했습니다. 나는 또한 대응하는 Get으로 자바의 데이터를 읽을 수있다. HBase 문서에 따르면 GET 요청을 사용하여 셀 값을 읽을 수도 있습니다. 브라우저의 경우 documentation을 참조하십시오. 그 결과가 XML은HBase : 타임 스탬프가있는 행 데이터에 대한 GET 요청
http://my_hbase_url:12345/dm-table/exampleRow/family:html?v=1
및 다음과 같습니다 :
<CellSet>
<Row key="ZXhhbXBsZVJvdw==">
<Cell column="ZmFtaWx5Omh0bWw=" timestamp="1466667016879">PGh0bWw+Li4uTXkgSFRNTC4uLjwvaHRtbD4=</Cell>
</Row>
</CellSet>
당신이이 타임 스탬프를 읽어보십시오
다음 요청은 전체 행을 반환하는 나를 위해 작동 내가
http://my_hbase_url:12345/dm-table/exampleRow/family:html/1466667016879
를 호출 할 때 1466667016879
,하지만 나는 not found
재를 얻을 수 sult! 또한 자바 코드가 작동하고 저에게이 타임 스탬프를 제공합니다
HTable table = new HTable(config, TABLE_NAME.getBytes());
Get g = new Get("exampleRow".getBytes());
g.setTimeStamp(1466667016879L);
Result r = table.get(g);
System.out.println("Timestamp: " + r.rawCells()[0].getTimestamp());
byte[] value = r.getValue(CF_DEFAULT.getBytes(), "html".getBytes());
String valueStr = new String(value);
System.out.println("GET: " + valueStr);
이 인쇄 :
Timestamp: 1466667016879
GET: <html>...My HTML...</html>
그래서 타임 스탬프가 존재하지만, 타임 스탬프와 함께 작동하지 않습니다 HTTP GET 요청을 누군가가 도와 드릴까요?
내가 조사했지만'family : html'을 사용할 수 없습니다. HBase 2.0 전용입니까? – Whitefret
column-familiy "family"와 "html"열은 내 테이블 예제에서 나온 것입니다.이 구조로 테이블을 만들었습니다. HBase 1.1.2에서 HDP 2.4를 사용합니다. –
나는 바보입니다./... 좋은 XML 응답 대신 파일을 다운로드합니다. 그것을 다시 들여다 보겠습니다. – Whitefret