首页 > 解决方案 > 从 Firestore 加载繁重的文档是否需要很长时间?

问题描述

我在我的应用程序中都使用Firebase DatabaseFirestore。我将用户数据(如姓名、电子邮件、uid 等小细节)存储在集合文档中作为Firestore 中的用户。它完美地工作。我在firebase数据库中创建了一个节点作为好友来存储用户的好友列表。因此,每当用户打开应用程序时,它都会从 firestore 中的 Users 中调用他的信息,并从 firebase 数据库中的 Friends 中调用他的朋友列表。

现在事情是通过这种方式从Firestore和调用数据Firebase database。所以这意味着它们是2 个请求/读取,一个到Friends节点,另一个到来自Users集合的文档。我认为如果我将好友列表存储在用户文档中会更好Array。所以我只会在 Firestore 中获得1次阅读。但我认为当他的朋友列表的数组增加 100 多个元素时。还有一两个类似的数组列表。那么从用户集合中检索文档会花费很多时间吗?或不?哪种方法更好?

这是我当前数据库结构的图像UsersFriends

标签: firebasefirebase-realtime-databasegoogle-cloud-firestore

解决方案


根据Firestore 的使用和限制,文档的最大大小为 1 MiB。

这意味着只要您的user文档不超过大小限制,您就可以friends毫无问题地将数据存储在数组中。

如果您计划超过阈值,您可能需要寻找其他选项,例如创建子集合以更好地缩放,因为子集合的大小不会以任何方式影响父文档的大小。


推荐阅读