python - 在 HappyBase 中使用多列过滤器

标签 python hbase multiple-columns

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

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

最佳答案

如 github 页面上所述,Happybase 使用的是 Thrift。您应该使用与 thrift 相同的语法。

在你的扫描函数中,你可以指定一个过滤字符串:

SingleColumnValueFilter(‘’, ‘, , ‘’)

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

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

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

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

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

关于python - 在 HappyBase 中使用多列过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18016773/

相关文章:

python - 鸭子打字的猴子补丁

python - 如何将字典列表转换为....?

python - 从内存位置的哈希查找中删除列表中的项目?

python - 如何保持形状的位置参数以将其最左侧保持在给定参数 "left"处,而不是中点?

hadoop - HDP2.0 for hbase 中缺少安全 jar

r - 在 ggplot2 中用不同的列标记 y 轴

hadoop - 有什么方法可以限制Hbase中的列数

java - 在 Java 中将字符串转换为可逆的内容

JAVA:在多列上对 ArrayList<ArrayList<Integer>> 进行排序

apache-spark - 即使透视值不存在,也可以通过透视创建多个列