当前位置: 首页 > 知识库问答 >
问题:

Google Cloud Firestore:子集合是否受到文档规则的限制?

颛孙安康
2023-03-14

在云火烧-最佳实践留档第一行写道:

每秒钟更新一个文档的次数不应超过一次。如果您更新文档的速度过快,那么您的应用程序将遇到争用,包括更高的延迟、超时和其他错误。

我有一个这样的数据库结构:

我的应用程序管理一个储物柜清单,人们可以登记入住

我的希望是,由于储物柜文件在一个子集合中,我可以同时读/写多个储物柜。我担心它们被视为一个文档(存储文档)的一部分,我一次只能读/写一个储物柜。

共有1个答案

卢开济
2023-03-14

子集合是逻辑层次结构,而不是结构层次结构。每文档写入限制适用于子集合中的每个文档,而不是所有文档。因此,在您的情况下,每个储物柜每秒只应更新一次,但许多储物柜可能会立即更新而不会出现问题。

 类似资料:
  • 所以我现在的规则是这样的。 我的问题是,即使在写到子集合时,它是否会准确地检查用户是否在group1->doc->subcollection->doc-'members'中,或者在这种情况下,它是否会签入group1->doc->subcollection->doc-'members'? 因为members列表只在groups集合中,而不在子集合中,所以不希望出现第二种情况。

  • 假设我有一个集合,其中包含子集合。餐厅权限设置在餐厅文档中,如下所示: 餐馆 任何有权访问餐厅的人也可以访问它的任何子集合,包括子集合。这是安全规则: 安全规则 查询餐厅列表可以这样完成,而且效果很好: 查询餐厅 现在如何查询子集合?我知道Firestore需要根据查询推断权限,而不查看底层数据。从逻辑上讲,这应该是可能的,因为任何可以访问的人也可以访问子集合。但是我如何组合这个子集合查询,以便F

  • 对于那些使用Firebase(FiRecovery)的人来说,您可以拥有一个包含文档的集合,其中每个文档都有一个id,然后一个集合可以保存一个子集合(相当于嵌入文档作为文档数组作为属性)。 然后,这个子集合可以容纳许多文档,而每个文档都有一个id。 在Firestore中,子集合是延迟加载的。 它将获取该集合上的文档,但如果有一个或多个子集合,它将不会检索该集合,除非特别转到该路径。e、 g:集合

  • 我正在开发一款iOS应用程序,它有(哇,惊喜!)聊天功能。整个应用程序大量使用Firebase工具,对于数据库,我正在使用新的云Firestore解决方案。 目前我正在使用数据库规则加强安全性,但我对自己的数据模型有点挣扎:)这可能意味着我的数据模型选择不当,但我真的很满意,除了实现规则部分。 模型的对话部分如下所示。在我的数据库的根目录下,我有一个集合: 然后我对每个对话都有一个子集合,称为消息

  • 在我的集合的SnapshotListener中,我使用以下命令循环遍历文档: 在 for 循环中的每个文档中,让我们称之为 ,我在 Cloud Firestore 上还有另一个文档集合。我想检索内子集合中的所有文档(每个文档只有一个字符串字段)。我能够做一个来获取本身,我用它来获取字符串字段,但我不知道如何获取其子集合中的文档。