使用happybase仅获取连续的前10列

时间:2015-05-15 05:35:30

标签: python hbase happybase

是否可以从一行中获得列族的有限数量的列?假设我只想为特定行获取['cf1': 'col1']的前10个值。

1 个答案:

答案 0 :(得分:3)

这是与https://github.com/wbolster/happybase/issues/93

相同的问题

答案是:

我认为唯一的方法是使用服务器端过滤器进行扫描。我认为你所追求的是ColumnCountGetFilter:

  

ColumnCountGetFilter - 接受一个参数,一个限制。它返回表中的第一个限制列数。语法:ColumnCountGetFilter('')示例:ColumnCountGetFilter(4)

来源:http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/admin_hbase_filtering.html

使用Happybase,看起来像这样(未经测试):

for row_key, data in table.scan(columns=['cf1'], filter='ColumnCountGetFilter(10)'):
    print(row_key, data)