【问题标题】:How to "aggregate" entities on DataStore如何在 DataStore 上“聚合”实体
【发布时间】:2018-03-02 13:55:43
【问题描述】:

我了解 Cloud Datastore 查询引擎不支持“联接”和“聚合”查询。

但是,如果我必须做“聚合”,如何聚合实体?

哪些方法更好?或者什么方法?

  • 如果实体值被更新,同时更新并汇总到另一个实体以进行聚合。
  • 使用 Dataflow 读取每个实体并减少。
  • 导出到 Bigquery。

【问题讨论】:

    标签: google-cloud-datastore


    【解决方案1】:

    不需要实时数据

    如果您不需要实时数据,请定期 exports 从 Cloud Datastore 到 BigQuery:

    gcloud datastore export --kinds="myKind" gs://${BUCKET}

    有人甚至做了一个shell script 来帮助将一种类型导出到 GCS,然后导入到 BigQuery。

    需要实时数据

    这里要研究的一件事是使用projections。投影查询更快更便宜,因为您可以告诉 Datastore 只返回您想要聚合的属性,然后它将其从索引中流出。

    如果您有更大的数据集,Dataflow 可以派上用场。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-29
      • 1970-01-01
      • 1970-01-01
      • 2018-07-22
      相关资源
      最近更新 更多