我需要根据单个列扫描hbase表。我想从其中一个值获取具有列值的所有行。即我想得到cf2:q2是A或B的行。我可以使用singlecolumnvaluefilter,但我必须为每个值创建一个过滤器。所以,如果我有10个值,我必须使用10个过滤器。 我想知道最好的方法是什么?有没有比为每个值创建过滤器更好的方法?
ROW COLUMN+CELL
row1 column=cf1:q1, timestamp=1321296699190, value=TestName1
row1 column=cf2:q2, timestamp=1321296715892, value=A
row2 column=cf1:q1, timestamp=1321296699190, value=TestName1
row2 column=cf2:q2, timestamp=1321296715892, value=B
row3 column=cf1:q1, timestamp=1321296699190, value=TestName1
row3 column=cf2:q2, timestamp=1321296715892, value=C
答案 0 :(得分:1)
我希望您提到的选项类似于此link。大多数建议涉及使用FilterList的相同方法。但随着值的增加,为每个值添加多个过滤器变得乏味。看起来像编写自定义过滤器,似乎是另一种选择。您可以在 Hbase - 权威指南中获取自定义过滤器的生命周期事件;第4章:客户端API:高级功能。希望能帮助到你。快乐的编码