从Google bigtable删除空行 的有效方法

问题描述 投票:-1回答:1

我们已经为bigtable中的列设置了过期时间。在一段时间内,不保存任何数据(仅键)的行数增加了。我正在寻找一种从表中删除这些空行的有效方法。

例如:

key:key1column1:value1(ttl 1天)colum2:value2(ttl 1天)

在我的用例中,这两个值都被垃圾回收了。键没有任何重要性,因此该键可以进行垃圾回收。

google-cloud-bigtable bigtable
1个回答
0
投票

您可以使用Cloud Bigtable CLI documentation

Delete a row

Example: cbt deleterow <table-id> <row-key> app-profile=<app-profile-id>

Delete all rows

cbt deleteallrows <table-id>

可选,您可以根据documentation使用Cloud Bigtable Client Libraries。


查看下面的documentation说明Cloud Bigtable 垃圾收集器,这是从Cloud Bigtable表中删除过期和过时的数据的自动,持续过程。

请注意,最多可能需要一周的时间才能对数据进行垃圾收集,因此您绝对不应仅依靠垃圾收集策略来确保读取请求返回所需的数据。

Edit1:

根据年龄收集垃圾

您可以使用cbt命令行工具为列族中的数据设置最长期限(1天)。

cbt createfamily your-table cf1

cbt setgcpolicy your-table cf1 maxage=1d

关于配置垃圾收集]的更多信息,可以在documentation上找到。

© www.soinside.com 2019 - 2024. All rights reserved.