您能否在 Firestore 中高效存储大量大型文档?

pdi*_*ley 0 firebase google-cloud-firestore

我有大量数据(大小大于 500kB),但始终小于 1MB。我可以将这些 blob 存储在 Cloud Storage 之类的地方,但直接从 Firestore 读取/写入它们会方便得多。

Firestore 可以容纳最大 1MB 的文档,因此我的 blob 将适合 Firestore 文档,但Firestore 文档还指出:

Firestore 针对存储大量小文档进行了优化。

这让我认为读取和写入接近 1MB 限制的大量文档会对 Firestore 的性能产生负面影响,从而减慢对其他不相关小文档的访问速度。是这样吗?

Dou*_*son 5

文档的大小对云中查询的性能没有影响。它将影响是将这些文档的内容传输到客户端应用程序所需的时间。显然,较大的文档将需要更多的时间来传输。但查询本身不会花费更多时间。

Firestore 查询不会访问整个文档。他们使用基于满足查询所需的字段内容的索引。这些索引规模巨大,并且需要索引来查询数据。当没有索引可用时,不会像 SQL 数据库那样进行“表扫描”。

底线是:不要为了服务器上的查询性能而担心文档的大小。担心文档的大小,以便将其传输给客户端。如果您想更好地了解 Firestore 的已知限制,我建议您阅读文档