gpt4 book ai didi

firebase - firestore array-like 数据结构索引限制

转载 作者:行者123 更新时间:2023-12-02 01:05:40 29 4
gpt4 key购买 nike

在firestore文档中,有下面的描述

Indexing limits - A single document can have only 20,000 properties in order to use Cloud Firestore built-in indexes. If your array-like data structure grows to tens of thousands of members, you may run into this limit.

https://cloud.google.com/firestore/docs/solutions/arrays

我想知道如何解读描述。两种模式中哪一种满足限制?

<pattern 1: categories in one document above 20,000> 
doc1
- id:111
- categories: {aaaa:true, aaab:false, aaac:true, aaad: false, aaae:true, aaaf:true, aaag:true, aaah:true, aaai:true, aaaj:true, ,,,,,,,,,,, }

另一种模式

<pattern 2:  categories in one document is a few but as a collection of document number of categories above 20,000> 
doc_1
- id:111
categories{aaaa:true, aaab:false, aaac:true, only several element}
doc_2
- id:111
categories{aaad:true, aaae:false, aaaf:true, only several element}
doc_3
- id:111
categories{aaag:true, aaah:false, aaai:true, only several element}

我认为模式 1 达到了极限,但模式 2 是否达到了极限?

最佳答案

限制是针对属性的总数,因此两种模式都有可能达到 20,000 的限制。

以下是一些可能有帮助的属性计数示例:

这个文档有两个属性:ab.c

{
a: "foo",
b: {
c: "bar"
}
}

这个文档有四个属性:a, b, b.c, d

{
a: "foo",
b: {
c: "bar",
},
d: ["quz", "qaz"]
}

这个文件也有四个:

{
a: "foo",
b: {
c: "bar",
},
d: ["quz", "qaz", "apple", "banana"]
}

本文档有五个:

{
a: "foo",
b: {
c: "bar",
},
d: ["quz", "qaz"],
e: ["apple", "banana"]
}

所以这与任何单个数组的长度或嵌套的深度无关,而是与可查询值的总数有关。


EDIT 03/05/18:我之前说数组成员单独计算索引时我错了。他们没有,这是我们在 Firestore 处于 Alpha 阶段时就已经存在的东西,但从未在公开发布中应用过。

关于firebase - firestore array-like 数据结构索引限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47625256/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com