Firestore: 连接查询与 Firestore 定价

19

如何在Firestore中执行低成本的连接(Join)?

在Firebase中,我会使用.map()来响应并根据每个项上存储的外键获取附加数据。然而,考虑到Firestore的定价模型,即按读取次数付费,这似乎过于昂贵。你认为呢?

在我的情况下,我的关系是将多个操作分配给少量类别(约5-7个)。每个操作都属于一个类别。

对于这种情况,最好的做法是什么?我应该像在Firebase中那样继续执行吗?还是应该独立获取两个集合并在Javascript中进行连接?

Jakub

PS实际上如何使用引用数据类型?很遗憾,文档没有描述。


你有没有查看过:https://dev59.com/-lYN5IYBdhLWcg3w-sl-? - Wandrille
谢谢,是的,我有。不幸的是,得票最多的评论要求更新文档。目前不清楚如何使用引用数据类型。 - Jakub
确实。我也对答案感兴趣。 - Wandrille
1个回答

9
云 Firestore,如您所知,每次文档读取都会收费。这是基于当您进行查询时返回给您的文档数量而计算的。无论您进行多少个单独的请求以获取文档(假设每个请求返回 >=1 个文档),都不重要。因此,使用 map() 方法比在内存中获取所有文档并将它们连接起来更便宜,因为您将从后端读取较少的文档。
如果您分享有关数据模型的更多信息(我无法在脑海中想象它),可能有一种通过复制某些数据或利用查询来减少连接需求的方法。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接