在HappyBase中使用多个列过滤器

时间:2013-08-02 12:22:52

标签: python hbase multiple-columns

我正在使用HappyBase作为Python Thrift客户端连接到HBase。

我正在扫描表格,需要在多列上使用过滤器。如何在HappyBase中实现这一目标? Java使用Filterlist为此提供了一个选项。

1 个答案:

答案 0 :(得分:8)

正如github页面上指出的那样,Happybase正在使用Thrift。您应该使用与thrift相同的语法。

在扫描功能上,您可以指定过滤字符串:

SingleColumnValueFilter('',',,'')

例如,如果您需要使用列blah扫描所有行:blouh = batman:

hbase_table.scan(filter="SingleColumnValueFilter ('blah','blouh',=,'regexstring:^batman$')")

您可以使用AND或OR来放置几个过滤器,只需记住用括号括起所有内容。

节俭文档:http://hbase.apache.org/book/thrift.html

在字符串上创建过滤器时要小心,您必须使用特定的比较器(例如我的示例中的regexstring)。