【发布时间】:2021-08-02 06:52:49
【问题描述】:
我有 1000 个文档的集合 foo,其中每个文档都有一个字段 bar,一个数字。如果我查询db.collection('foo').orderBy("bar", "desc").limit(5),我将收取多少阅读费用?
【问题讨论】:
标签: firebase google-cloud-firestore
我有 1000 个文档的集合 foo,其中每个文档都有一个字段 bar,一个数字。如果我查询db.collection('foo').orderBy("bar", "desc").limit(5),我将收取多少阅读费用?
【问题讨论】:
标签: firebase google-cloud-firestore
在查询中使用orderBy 语句不会产生额外费用,因为可以根据索引确定结果的顺序。因此,Firestore 不必读取集合中的所有文档来确定您的场景中 bar 的值,它只需要读取 bar 的索引。
事实上,Firestore 从不 需要读取所有文档来满足查询。它的整体性能保证是基于能够通过仅从索引中读取切片来执行它允许的任何查询。
该查询将向您收取至少 1 次和最多 5 次读取的费用。具体费用取决于您实现读取操作的方式以及本地缓存的状态。
注意事项:
【讨论】:
5 次读取。由于limit(5),无论您拥有多少文件,您都需要为您请求的内容付费,在这种情况下为 5。
【讨论】: