Firestore:最大文档大小 1MB 是否也适用于子集合?
Firestore: Does Max Document size 1MB also apply to subcollections?
这是一个非常基本的问题,但我不确定我是否理解正确,而且我没有找到为我完全阐明它的来源。
Firestore 文档始终保存在集合中。一个集合可以包含任意数量的文档,但每个文档的最大大小为 1MB。
我看到必须以这种方式创建子集合:
DocumentReference messageRef = db
.collection("rooms").document("roomA")
.collection("messages").document("message1");
所以我们在文档 roomA
下有一个集合 messages
。因此,整个(子)集合 messages
的最大大小也应该是 1 MB,因为它是文档的子项,所以存储在 messages
中的所有内容也存储在 roomA
中。
因此您无法在 messages
中保存那么多文档。
还是我理解错了?
我还了解到 Firestore 很肤浅。在这种情况下,这是否意味着存储在 messages
中的文档未同时存储在父文档 roomA
中?
在那种情况下,您可以根据需要拥有任意数量的 roomA
子集,只要它们的名称总和小于 1 MB?
并且每个子集合本身都可以包含任意数量的文档。
哪个是对的?
我认为这个问题在这里得到了回答:
简而言之:子集合对包含文档的大小没有影响,并且可以包含任意数量的元素(每个元素的大小限制为 1MB)
这是一个非常基本的问题,但我不确定我是否理解正确,而且我没有找到为我完全阐明它的来源。
Firestore 文档始终保存在集合中。一个集合可以包含任意数量的文档,但每个文档的最大大小为 1MB。
我看到必须以这种方式创建子集合:
DocumentReference messageRef = db
.collection("rooms").document("roomA")
.collection("messages").document("message1");
所以我们在文档 roomA
下有一个集合 messages
。因此,整个(子)集合 messages
的最大大小也应该是 1 MB,因为它是文档的子项,所以存储在 messages
中的所有内容也存储在 roomA
中。
因此您无法在 messages
中保存那么多文档。
还是我理解错了?
我还了解到 Firestore 很肤浅。在这种情况下,这是否意味着存储在 messages
中的文档未同时存储在父文档 roomA
中?
在那种情况下,您可以根据需要拥有任意数量的 roomA
子集,只要它们的名称总和小于 1 MB?
并且每个子集合本身都可以包含任意数量的文档。
哪个是对的?
我认为这个问题在这里得到了回答:
简而言之:子集合对包含文档的大小没有影响,并且可以包含任意数量的元素(每个元素的大小限制为 1MB)