我们使用 HBase 存储从 oracle 到 hdfs 的数据。这里我们将行键设计为字节数组值。行键是用复合键框起来的,比如(Md5(schema name).getBytes() + Md5(date (format = yyyy-mm-dd)).getBytes() + ByteBuffer.allocate(8).putLong(pkid).array())
. 这里 PKID 是一个长值。
如果我想获取特定模式和特定日期的所有行,我可以使用 startrow 和 endrow 查询 hbase 表,或者像这样查询的任何其他方式?
当我将行键存储为字符串user1_20130123
时...
,user1_20130127
我可以使用
scan 'TempTable', {
COLUMNS => ['CF:NAME'],
LIMIT => 10,
STARTROW => 'user1_20100101',
ENDROW => 'user1_20100115'
}
在这里,我得到了那些日期中 user1 的行。当我像上面一样存储行键时,我该如何查询?