【问题标题】:Understanding Entity group limitations了解实体组限制
【发布时间】:2017-04-26 16:37:22
【问题描述】:

我正在尝试了解如何解决谷歌数据存储的两个限制

每秒大约一个事务的写入吞吐量限制 单个实体组。

一个事务访问的所有数据最多只能包含在 25 个 实体组。

假设我想存储用户信息。由于第一个限制,我无法将它们存储在实体组中,因为多个用户可能会同时更新他们的信息。现在,如果我尝试将所有用户保存为根实体,则第二个限制说我不能对用户使用任何查询(例如查找年龄 > 10 的用户)。现在我想知道数据存储如何在这样的限制下使用。

【问题讨论】:

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


    【解决方案1】:

    您误解了第二个限制:当然,您可以查询所有年龄 > 10 岁的用户,但您不能在事务中执行此操作。

    如果一致性很重要,您可以:

    1. 在事务外执行仅键查询
    2. 获取最多包含 25 个键的列表以进行操作(例如使用 Query Cursors
    3. 在事务中(通过键)访问与列表中的键对应的实体 - 这些访问将是一致的

    【讨论】:

      【解决方案2】:

      查询不是事务 - 返回的结果可以分布在任意数量的实体组中。

      【讨论】:

        猜你喜欢
        • 2012-11-25
        • 1970-01-01
        • 2020-07-29
        • 2020-09-25
        • 2018-07-10
        • 1970-01-01
        • 2011-05-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多