【问题标题】:google cloud datastore partitioning strategy谷歌云数据存储分区策略
【发布时间】:2017-08-14 17:42:11
【问题描述】:

尝试使用 Google Cloud Datastore 存储来自 IOT 设备的流数据。目前以每台设备一分钟内 2 行(实体)的速度从 10,000 台设备获取数据。数据实体永远不会更新,而是定期清除。后端代码是 PHP。

  1. 我是否需要像目前在 MySQL 表中那样对数据进行分区以获得更好的性能。目前使用基于键的表分区。

  2. 如果是,我应该使用命名空间作为一个设备的一个 NAMESPACE,还是应该为一个设备创建一个 KIND,例如“device_data_1”、“device_data_2”

谢谢

【问题讨论】:

  • 数据很多,建议先做成本模拟。 Datastore 存储大量小东西的成本很高(最好将它们打包成更大的实体),因为费用是按每次写入收费且与实体大小无关。

标签: google-app-engine google-cloud-datastore


【解决方案1】:

不,您不需要分区,数据存储性能不受正在写入或读取的实体数量或实体的影响(只要它们不在同一个实体组中,整体写入速率为 1/秒)。

另请参阅这些以某种方式相关的答案:Does Google Datastore have a provisioned capacity system like DynamoDB?

【讨论】:

    猜你喜欢
    • 2016-10-25
    • 1970-01-01
    • 1970-01-01
    • 2015-07-17
    • 2015-05-16
    • 1970-01-01
    • 1970-01-01
    • 2017-05-11
    • 1970-01-01
    相关资源
    最近更新 更多