【问题标题】:Google Cloud Datastote: Groupby queries and complex aggregationsGoogle Cloud Datastore:Group By 查询和复杂聚合
【发布时间】:2018-04-01 23:29:08
【问题描述】:

我正在评估 Cloud Datastore 的一个简单应用程序,其中将插入/更新数据,然后执行基于时间范围的聚合查询组。

云数据存储文档有基本的query language description.

我们如何使用云数据存储查询对多个字段进行groupby 查询?

另外,云数据存储提供复杂的聚合查询还是只能执行简单的 get、sort 和 project 查询?

样本数据:

{
    "name": "user1",
    "state": "V",
    "status": "verified"
} {
    "name": "user2",
    "state": "C",
    "status": "non-verified"
} {
    "name": "user3",
    "state": "T",
    "status": "non-verified"
} {
    "name": "user4",
    "state": "M",
    "status": "verified"
}

预期结果:

{ "user" : "user4", "count" : 1 }
{ "user" : "user3", "count" : 1 }
{ "user" : "user2", "count" : 1 }
{ "user" : "user1", "count" : 1 }

我计划执行mongodb aggregation 提供的更复杂的聚合排序

请指导。

【问题讨论】:

    标签: mongodb google-cloud-datastore


    【解决方案1】:

    在 Datastore 中无法做到这一点。我想说,数据存储区查询语言很差。 没有来自 Mongo 世界的聚合查询(或来自 SQL 世界的连接)。 此外,没有您在 mongoDb 中看到的这种分组功能。仅在查询时不同,但它仅返回包含提供的属性列表(投影)https://cloud.google.com/datastore/docs/concepts/queries#projection_queries 的第一条记录。

    对于具有关系的数据结构,我会选择另一个选项(SQL 或 Mongo),而不是 Datastore。 数据存储区,我想最适合其他任务和强非关系数据。

    您始终可以使用它,但请记住,所有数据聚合和连接都将在代码级别而不是数据库级别完成,我相信您希望避免这样做。

    【讨论】:

      猜你喜欢
      • 2014-07-30
      • 1970-01-01
      • 2021-03-09
      • 1970-01-01
      • 1970-01-01
      • 2020-03-02
      • 2019-05-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多