【发布时间】:2019-01-07 17:25:22
【问题描述】:
您的公司正在将实时传感器数据从他们的工厂车间传输到 Bigtable,他们注意到性能极差。应如何重新设计行键以提高 Bigtable 对填充实时仪表板的查询的性能?
a) Use a row key of the form <timestamp>
b) Use a row key of the form <sensorid>
c) Use a row key of the form <timestamp>#<sensorid>
d) Use a row key of the form >#<sensorid>#<timestamp>
根据文档,在这种情况下,理想的行键是什么?我认为它应该是 sensorid 和 timestamp 的 row key,但是我看到一些在线文章只提到了上述作业问题的“timestamp”。请帮忙。
我对上述特定用例的理论相互矛盾,如下所示: - 由于行是按字典顺序排序的,因此将时间戳用作行键不仅是明智的。 (来自 Doc - 不建议将时间戳本身用作行键,因为大多数写入将被推送到单个节点上。) - 在这个用例中,由于要求是一个实时仪表板,这也可能意味着所有 sensorid 数据可以只存储一个时间戳,因此可以仅基于时间戳进行实时查询。
请帮助解决此用例的理想行键。
【问题讨论】:
标签: bigtable google-cloud-bigtable