我有很深的嵌套集合和子集合。 我只是担心表现
会影响深层嵌套集合和子集合的性能吗?
以下是深层嵌套的集合和子集合:
db.collection("col1/doc1/col2/doc2/col3/doc3/col4").doc(doc4).set(data);
或者像下面这样将它们分开会更快:
db.collection("col1/doc1/col2").doc(doc2).set(data);
// and
db.collection("col3/doc3/col4").doc(doc4).set(data);
现在其中哪个更快更有趣?
答案 0 :(得分:2)
应该没有任何区别。无论深度如何,每个集合和子集合都应完全独立于彼此进行操作。集合仅通过其路径(只是一个字符串)来标识。
Firestore的主要性能特征是queries scale with the size of the result set,而不是集合的大小。因此您可以拥有庞大的集合,但这不会影响查询的性能。理所当然的理由是,在集合的路径中添加一些额外的组件根本不会影响性能。