Firebase 一些误解
我正在计划firestore中的db结构,无法理解一些标准点 链接: 1分 这意味着集合中复合索引的字段的总内存大小(以db为单位) 3分 20000是否与文档中的最大字段数相似,因为由于文档的原因,每个字段都会自动编制索引?或者他们的意思是Firebase 一些误解,firebase,google-cloud-firestore,Firebase,Google Cloud Firestore,我正在计划firestore中的db结构,无法理解一些标准点 链接: 1分 这意味着集合中复合索引的字段的总内存大小(以db为单位) 3分 20000是否与文档中的最大字段数相似,因为由于文档的原因,每个字段都会自动编制索引?或者他们的意思是 queryRef .where('field1', '<', someNumber1) ... .where('field20000', '<', someNumber20000); queryRef .其中('field
queryRef
.where('field1', '<', someNumber1)
...
.where('field20000', '<', someNumber20000);
queryRef
.其中('field1','point1
您可以在文档中看到大小是如何计算的
索引项大小
索引项的大小是以下各项的总和:
- 索引文档的文档名大小
- 索引字段大小的总和
- 索引文档集合ID的大小(如果
索引是自动索引(不适用于复合索引)
- 三十二
附加字节
在具有数字ID的任务集合中使用此文档作为示例:
Task id:5730082031140864
- "type": "Personal"
- "done": false
- "priority": 1
如果在类型+优先级(均为升序)上有复合索引,则此索引中索引项的总大小为84字节:
- 文档名为29字节
- 完成字段名和布尔值为6字节
- 优先级字段名称和整数值为17字节
- 32个附加字节
第2点
对于单字段索引(我们自动创建的索引),我们为每个字段创建2个索引:升序+降序
这意味着10000个字段将达到20000个索引条目限制,因此10000个字段是当前的最大值。如果您还有复合索引,则会减少,因为它将消耗每个文档20000个索引条目限制中的一部分