当你的行键被散列时,你如何使用 hbase shell 扫描命令?
我有一个使用以下命令在沙箱(其中行键未散列)上工作的虚拟实例。
scan 'tableName' , {ROWPREFIXFILTER => 'myrowStartValue'}
这有效。但是,对于实际实例,行键是散列的。如何解决这个问题?
当你的行键被散列时,你如何使用 hbase shell 扫描命令?
我有一个使用以下命令在沙箱(其中行键未散列)上工作的虚拟实例。
scan 'tableName' , {ROWPREFIXFILTER => 'myrowStartValue'}
这有效。但是,对于实际实例,行键是散列的。如何解决这个问题?
我希望只有一个记录,但它可能是一个范围。
scan 'mytablename',{FILTER=>org.apache.hadoop.hbase.filter.PrefixFilter.new(org.apache.hadoop.hbase.util.Bytes.toBytes(org.apache.hadoop.hbase.util.MD5Hash.getMD5AsHex(org.apache.hadoop.hbase.util.Bytes.toBytes('somekeyvalueprefix'))))}
我确实发现我们可以在命令行中使用 hbase 类。但是,我没有得到我期望的值。
您是否期望返回一系列密钥?一旦它们被散列,它们将不再以您期望的方式排序,因此扫描可能不会达到您的预期。恐怕您必须提前手动对要检索的任何密钥进行哈希处理 - HBase shell 无法为您执行此操作。