【问题标题】:Google Datastore limitation谷歌数据存储限制
【发布时间】:2015-09-20 04:33:36
【问题描述】:

我希望使用 Datastore,但我了解到实体大小限制为 1mb。

我有一个实体“用户”,其中包含大约 5 万个“用户”。我想知道实体大小限制是否对我的情况来说不是太严格。如果有一天我会有更多的用户,我会被屏蔽吗?

这就是我想象我的数据库的方式,也许我误解了它应该如何工作:

+--------- Datastore -------------+
|                                 |
| +---------- Users ------------+ |
| |                             | |
| | +---------- User ---------+ | |
| | | Name: Alpha             | | |
| | +-------------------------+ | |
| |                             | |
| | +---------- User ---------+ | |
| | | Name: Beta              | | |
| | +-------------------------+ | |
| +-----------------------------+ |
+---------------------------------+

其中“用户”是一个包含“用户”实体的实体。

谢谢。

【问题讨论】:

  • 我很抱歉我的回答,我不知何故错过了你的“用户”实体上的“s”:p。为什么你有一个包含所有用户的主实体而不是一个“用户”类型,它可以让你创建尽可能多的不同用户? (除此之外,您的“用户”如何包含用户?“用户”本身是一个实体,并通过键链接到用户,或者作为祖先,或者只是一个重复的字段?
  • 我不确定你的答案是否理解 :( 因此我更新了我的帖子。每个用户大约有 40 个字段...
  • 数据存储有种类(从标准数据库读取为“表”)和实体(从标准数据库读取“行”)。大小限制在实体上,而不是种类上。所以如果你有一个包含多个实体用户的“用户”,只要每个用户不超过一个兆,你就可以了
  • 我明白了...我终于决定看youtube.com/watch?t=528&v=fQazhzcC-rg
  • 确实是一个相当不错的教程:)。我将在已删除的答案中添加一些数据,然后取消删除

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


【解决方案1】:

您的“KIND”是用户,您的“实体”是每个用户。所以不管你有多少用户,只要每个用户都在一个兆之下,你就可以了。

对完整“种类”大小的唯一限制是您愿意为存储支付的费用。阅读this 文档,或观看此introduction video 可以为您的情况提供一些高级建议。

为了更好地理解键和索引(数据存储的另一个非常重要的概念),我建议this video 很好地解释了复合索引的工作和行为方式:)

【讨论】:

    猜你喜欢
    • 2019-12-12
    • 1970-01-01
    • 1970-01-01
    • 2018-02-24
    • 1970-01-01
    • 1970-01-01
    • 2021-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多