使用列删除所有行的最简单/有效方法是什么?不匹配列表中的任何模式(使用Java API)?
伪代码说清楚:
patterns = ["hbase", "rules"]
awesomeTable.delete {
row, family =>
! patterns.exists(pattern => family.column.matches(pattern))
}
答案 0 :(得分:0)
在Hbase中,没有直接有效的方法来按内容选择行, Hbase就像一个Map,你只能按键获取行数(范围)。
一种可能的方法是使用过滤器,但它会使它非常慢
看一下值过滤器
http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/filter/ValueFilter.html