如何解决bigtable 反向时间戳优于常规时间戳
通过反转时间戳,你可以设计一个行键,其中最 最近的事件出现在表格的开头而不是结尾。作为 结果,您只需通过检索即可获得 N 个最近的事件 表格的前 N 行。
我的理解是,假设表按升序排序,那么常规时间戳将意味着最近的事件将在表的末尾,因为这些值增加,而反向时间戳将意味着最近的事件将在表的开头,因为那些值会降低。我的理解是这种反向时间戳设计利用了对表的行键进行排序。
为什么升序排序比降序排序有好处 - 升序排序是 bigtable 中唯一支持的排序类型吗?上面的“我的理解”是否正确?
解决方法
是的,您的理解是正确的。云 Bigtable 仅支持按字典顺序排序的键。因此,您可以通过反转时间戳来设计一个键,以便通过检索表的前 N 行来获取 N 个最近的事件。
在 Cloud Bigtable 中存储时间序列数据是很自然的选择。云 Bigtable 将数据存储为行中的非结构化列;每行都有一个 行键,行键按字典顺序排序
行按行键按字典序排序,从低到高 最高字节串。行键按 big-endian 字节顺序排序 (有时称为网络字节顺序),二进制等价于 按字母顺序。
Time series and Cloud Bigtable
例如,这是如何按字典顺序对这些值进行排序(升序):
1425330757686
1425330757687
1425330757688
2
3
,
为什么升序排序比降序排序有好处 - 升序排序是 bigtable 中唯一支持的排序类型吗?
Bigtable stores data lexicographically 开箱即用。这意味着密钥“203”将放置在“202”之后,但密钥“00202”将放置在“203”之后。您无法以任何其他方式对数据进行排序。
除此之外,您的理解是正确的。使用反向时间戳时,最近的事件将在表的开头。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。