我的hbase表有一个包含键值对数组的列。
我读到了 row-key
, column family
或者 column
, custom filter
不过,
我需要扫描列,其中持有特定的关键字名称,如。。。
ROW1 , CF1, DATA_COLUMN : {KEY1:VALUE, KEY2:VALUE, KEY3:VALUE }
ROW2 , CF1, DATA_COLUMN : {KEY1:VALUE}
ROW3 , CF1, DATA_COLUMN : {KEY1:VALUE, KEY5:VALUE}
ROW4 , CF1, DATA_COLUMN : {KEY8:VALUE} <--- Only needed row with KEY8 value set
我正在研究rdbms Package 器,但我认为还有更有效的方法。如有任何建议,将不胜感激。
2条答案
按热度按时间4si2a6ki1#
使用
SingleColumnValueFilter
以及SubstringComparator
:如果你需要做得更精确(例如
VALUE
在您的示例中包含KEY8
,将出现意外的结果),您需要自己构建一个自定义筛选器。jdgnovmf2#
可以使用rowprefixfilter。
为此,可以使用hbase库来使用scan对象
这将返回键为8的行的值