我正在设计一个hbase模式,其中行键应该是整数。我打算使用带有startrow和带有整数值的endrow的java扫描api。
我想我可以用 '0'
填充以尊重词典顺序,但我的键将比使用整数的二进制表示大得多。
如何转换整数(比如 int
)在 byte[]
如果我对startrow和endrow使用相同的转换,那么扫描将返回预期的值?
回答:
尼尔斯给出了答案,我在这里找到了答案:
字节数组的java比较器(词典)
糖酶提取物 int
从 byte[]
比较一下。
我正在设计一个hbase模式,其中行键应该是整数。我打算使用带有startrow和带有整数值的endrow的java扫描api。
我想我可以用 '0'
填充以尊重词典顺序,但我的键将比使用整数的二进制表示大得多。
如何转换整数(比如 int
)在 byte[]
如果我对startrow和endrow使用相同的转换,那么扫描将返回预期的值?
回答:
尼尔斯给出了答案,我在这里找到了答案:
字节数组的java比较器(词典)
糖酶提取物 int
从 byte[]
比较一下。
1条答案
按热度按时间2ul0zpep1#
您可以使用hbase客户机库中的org.apache.hadoop.hbase.util.bytes来实现这一点。
从字节数组到int:
从int到字节数组:
实际上,我已经做了一个在线工具来生成十六进制值,我需要在hbase shell中查询行id。