时间戳中序列号的垃圾回收
您为单元的时间戳属性分配序列号(而不是分配日期和时间)的原因可能与垃圾回收无关。本页介绍了针对包含此类人工时间戳的数据的 Bigtable 垃圾回收。
在查看本页面之前,您应该参阅垃圾回收概览,包括实际和人工时间戳的说明。
版本数
如果时间戳为序列号,则垃圾回收政策应基于版本数。这意味着需要指定要保留的单元数。如果您使用序列号而不是实际时间戳,则基于存在时间的垃圾回收政策是不安全的,这是因为基于存在时间的政策会根据时间戳移除数据。
将序列号存储在时间戳中的优点
- 如果需要,您可以使用单调递增的时间戳。
将序列号存储在时间戳中的缺点
您无法切换到基于存在时间的垃圾回收政策。
由于时间戳并非实际日期和时间,因此您无法将单元格的时间戳用于其他任何用例,例如确定值的存在时间。如需解决该问题,您可以将实际时间戳写入单独的列中,但这会增加您存储的数据量。
由于垃圾回收是异步进行的,因此您在读取数据时仍应始终使用过滤条件。
后续步骤
- 参阅 Bigtable 垃圾回收概览。
- 探索模拟单元级 TTL 的策略。
- 查看展示了如何配置垃圾回收的代码示例。
- 详细了解存储价格。