행 키가 정수 여야하는 Hbase 스키마를 설계하고 있습니다. 나는 startrow와 함께 java에서 스캔 API를 사용하고 정수 값을 사용하여 endrow를 사용하려고합니다.Hbase 정수를 행 키 및 사전 식 순서로 사용하십시오.
'0'
패딩을 사용하여 문자열에서 내 정수를 변환 할 수 있다고 생각합니다. 그러나 이진수 표현을 사용하는 것보다 키가 훨씬 큽니다.
내 정수 (예 : int
)를 byte[]
으로 변환하면 startrow 및 endrow에 동일한 변환을 사용하면 스캔에서 예상 값이 반환됩니다.
답변 :
닐스는 anwser을 포기하고 여기 확인을 발견
Java Comparator for byte array (lexicographic)
HBase를가 byte[]
에서 int
추출하고이를 비교한다.
감사합니다. Nils. i1과 i2에 대해이 변환을 사용하면 byte [] b1과 b2를 얻을 수 있습니다. ibase
mvera
그렇게 생각합니다. (b1 == b2의 크기이지만 원하는 순서대로 내용이 사전 식으로 비교됩니다.) 그러나 hbase는 새로운 삽입/삭제에 대한 사전 식 순서를 유지하므로 스캔 할 때 걱정할 필요가 없습니다. – nilsmagnus