2014-04-22 2 views
1

hbase api를 사용하여 원시 데이터 형식을 저장하고 검색하는 방법은 무엇입니까? 내 작업은 무작위로 생성되는 예측할 수없는 데이터 유형을 포함하는 hbase에 임의의 이벤트를 저장하는 것입니다. 내가 원할 때마다 그들을 찾아야합니까? 누군가 나를 도와주세요. 왜냐하면 나는 hbase과이 물건에 정말 새로운 사람이기 때문이다.hbase에 원시 데이터 형식을 저장하고 검색하는 방법

답변

3

이렇게하면 HBase를 테이블에 데이터를 입력하는 방법입니다

Configuration conf = HBaseConfiguration.create(); 
HTable table = new HTable(conf, "TABLE_NAME"); 
Put p = new Put(rowKey); 
p.add(Bytes.toBytes("cf"), Bytes.toBytes("c1"), Bytes.toBytes("VALUE")); 
table.put(p); 

당신은 데이터의 유형에 대해 걱정할 필요가 없습니다. 그러나 HBase 내부로 들어가는 모든 것이 바이트 배열로 저장된다는 것을 명심해야합니다. 따라서 HBase에서 데이터를 가져 오는 동안 매번 bytearray를 얻으므로 적절한 유형으로 다시 변환해야합니다. 이것은 바이트 클래스가 제공하는 다양한 오버로드 된 메소드를 사용하여 수행 할 수 있습니다. 이와 같이 :

Bytes.toString(byte[]) 
Bytes.toFloat(byte[]) 
Bytes.toLong(byte[]) 
+0

여기서 내가 원하는 것은, 예를 들어 34.5라는 부동 소수점을 저장한다고 가정 해 보겠습니다. 그래서 먼저 이것을 저장하고 싶습니다. 그리고이 값을 다시 검색 할 때 이것을 다시 float 값으로 인식해야합니다. 바이트 배열이 아님 –

+0

데이터를 가져 오는 동안 ** Bytes.toFloat (byte []) **를 사용하십시오. – Tariq

+0

당신도이 하나 도와주세요 : http://stackoverflow.com/questions/23333060/how-to-create-a-column-family-in-a-selected-cluster-in-hbase –

관련 문제