Firestore定价 - 集合中的文档数量是否重要?

Tal*_*rda 11 firebase google-cloud-firestore

我在文档中读到,我正在向我收到的请求金额收费read,write或者update documents.我还读过,阅读a collection的价格与阅读相同document(" 对于文档读取以外的查询,例如收集ID列表的请求,您需要为一个文档读取费用. "),如果我,请更正我错了.

我的问题是:读取collection大量的documents内容(比方说 - 10,000 documents)的价格与读取10的价格相同吗?

我想对它进行一些解释......

Tod*_*man 26

这取决于"读取集合"的含义,但对于大多数人来说,这意味着"从集合中查询大量文档".答案是定价通常取决于检索的文件数量.

过分简单化了一下:

如果您有一个10名员工的集合并且您正在collection("employees").get()接听电话,您将获得10份员工文件,并收取10次读取费用.

如果您有一个10,000名员工的集合并且您正在collection("employees").get()接听电话,您将获得10,000名员工,并收取10,000次读取费用.

如果您拥有10,000名员工并且您正在collection("employees").get().limit(10)接听电话,那么您将获得10名员工,并收取10次读取费用.

如果您拥有10,000名员工,其中4名被命名为"Courtney"并且您正在collection("employees").where("first_name", "==", "Courtney")接听电话,那么您将获得4名员工并被收取4次阅读费用.

  • 不必要。实时数据库主要根据带宽大小收费,而Cloud Firestore主要根据读取次数收费。在处理频繁更新少量数据的应用程序时,实时数据库通常更具成本效益,而在处理较大块的文档时,Cloud Firestore通常更有效。但是,无论哪种方式,您都应该真正着眼于分页查询以提高成本效益。 (5认同)
  • 仅仅是我还是这个定价模型比以前的实时数据库贵100倍?使用实时数据库查询现在被认为是集合的内容被认为是单个读取.我希望切换到Firestore以获得更好的查询功能,但是当我的馆藏有数千个文档时,我会很快超过配额. (2认同)
  • @ToddKerpelman行 `collection("employees").get().limit(10)` 应该是 `collection("employees").limit(10).get()` (2认同)