python - 如何从 Cloud Bigtable 中仅读取某些列族?

标签 python bigtable google-cloud-bigtable

我有一个包含两个列族的 Cloud Bigtable 表:smalllarge。我想扫描所有行并访问 small 列中的值:

client = bigtable.Client(project=project_id, admin=False)
instance = client.instance(instance_id)
table = instance.table(table_id)

for row in table.yield_rows():
    key = row.row_key.decode('utf-8')
    small_value = row.cells[small_cf][b''][0].value
    print(key, small_value)

这可行,但也会获取我不关心的large CF 的值。如何只从一组特定的 CF 中获取数据?

最佳答案

您可以使用 FamilyNameRegexFilter为此,例如:

for row in table.yield_rows(filter_=FamilyNameRegexFilter('small')):

关于python - 如何从 Cloud Bigtable 中仅读取某些列族?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51333700/

相关文章:

python - 如何在 appengine 中模拟追随者流?

google-cloud-bigtable - 使用 Deployment Manager 部署 Google Cloud Bigtable

Python tkinter 禁用按钮,直到所有字段都被填满

python - C++ 类成员函数返回 PyObject* 段错误

node.js - 试图在 bigtable 中模拟单元级 TTL,但整个列族数据被垃圾收集删除

grpc - Google Cloud Bigtable : repeated grpc error code 13, 然后突然成功

java - java中的Bigtable认证

Python 列表排序取决于项目是否在另一个列表中

python - 为什么 Python docx 或 lxml 将属性从一个节点移动到另一个节点?

sql - 使用 NOSQL 进行连接操作