使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
仅保留最新值
所有 Cloud Bigtable 客户端库都可让您使用过滤条件来读取指定行和列的最新值(也称为“单元”)。在某些情况下,您可能不需要读取旧版数据。为了避免系统因存储您不再需要的旧版数据而付费,您可以使用本页面上的策略删除此类数据。
在阅读本页内容之前,请先查看垃圾回收概览。
时间戳为零
如果您只想读取列族列中的最新值,并且不想等待垃圾回收来移除旧单元,则可在每次将数据写入列族时,将时间戳设置为零 (1970-01-01 00:00:00 UTC
)。在这种情况下,新的写入会立即隐藏旧数据,因此读取操作始终会返回每列的单个值。您可能仍需要等待压缩操作,才能停止旧的单元占用表空间和产生存储费用,具体取决于先前数据的写入时间。
零时间戳的优点
- 读取数据时不需要使用过滤条件,因为您只能读取列的单个最新值。
- 在这种情况下,您不需要设置垃圾回收政策,因为每次对现有单元执行写操作时,您都已经删除了旧数据。
零时间戳的缺点
- 单元的先前值会立即被覆盖,而且无法再检索。
- 由于时间戳并非日期和时间,因此您无法将单元格的时间戳用于其他任何用例,例如确定值的存在时间。如需解决该问题,您可以将实际时间戳写入单独的列中,但这会增加您存储的数据量。
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2022-03-24。
[{
"type": "thumb-down",
"id": "hardToUnderstand",
"label":"Hard to understand"
},{
"type": "thumb-down",
"id": "incorrectInformationOrSampleCode",
"label":"Incorrect information or sample code"
},{
"type": "thumb-down",
"id": "missingTheInformationSamplesINeed",
"label":"Missing the information/samples I need"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻译问题"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"其他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"易于理解"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"解决了我的问题"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"其他"
}]
{"lastModified": "\u6700\u540e\u66f4\u65b0\u65f6\u95f4 (UTC)\uff1a2022-03-24\u3002"}