子集合中索引字段是否拥有独立索引及写入限额技术问询
关于Firebase子集合索引与写入限额的解答
1. 子集合索引独立于父集合
每个子集合(比如User/{documentId}/Review/)的索引都是独立的,和父集合User的索引完全分隔开。Firebase会将每个子集合视为独立数据集处理索引逻辑,不会与父集合共享索引资源。
2. 每个子集合单独享有单调递增索引的写入限额
针对createdAt这类单调递增的索引字段,每个Review子集合各自拥有每秒500次的文档写入限额。不同用户的Review子集合之间的写入操作不会互相占用限额,每个用户的评论写入都能单独使用500次/秒的上限。
3. 子集合路径在底层的作用
Firebase处理子集合索引时,会自动将**父文档ID(即{documentId})**作为索引的隐含组成部分。也就是说,每个子集合的createdAt索引实际上已经与对应用户ID绑定,底层已经完成了你想手动组合字段的逻辑。
4. 手动组合用户ID与时间戳无额外收益
你计划创建userDocumentId+createdAt这类复合字段来提升写入量的做法,不会带来实际收益。因为Firebase底层已经通过子集合路径区分了不同用户的索引,相当于已经将用户ID作为索引的一部分,手动组合字段只会增加数据冗余,无法提升写入限额。
内容的提问来源于stack exchange,提问作者Micro
相关产品推荐
相关产品推荐

