获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

了解 Cloud Firestore 計費

本文檔介紹了 Cloud Firestore 的定價詳情。它還會告訴您如何限制和監控您在 Cloud Firestore 上的支出。

如果您使用美元以外的貨幣付款,則適用雲平台 SKU上以您的貨幣列出的價格。

定價概覽

使用 Cloud Firestore 時,您需要支付以下費用:

  • 您讀取、寫入和刪除的文檔數
  • 聚合查詢匹配的索引條目數。對於與查詢匹配的最多 1000 個索引條目的每批次,您需要支付一份文檔讀取費用。
  • 您的數據庫使用的存儲量,包括元數據和索引的開銷。
  • 您使用的網絡帶寬量

存儲和帶寬使用量以千兆字節 (GiB) 計算,其中 1 GiB = 2· 30字節。所有費用每天累積。

以下部分提供了有關如何為您的 Cloud Firestore 使用收費的詳細信息。

按地點定價

下表列出了每個 Cloud Firestore 位置的讀取、寫入、刪除和存儲定價:

選擇區域

美國(多區域)

美國(多區域)

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.06 USD
文檔寫入每 100,000 個文檔 0.18 USD
文檔刪除每 100,000 個文檔 0.02 USD
存儲數據$0.18/GiB/月

俄勒岡州

俄勒岡州

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.03 USD
文檔寫入每 100,000 個文檔 0.09 USD
文檔刪除每 100,000 個文檔 0.01 USD
存儲數據$0.15/GiB/月

洛杉磯

洛杉磯

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.036 USD
文檔寫入每 100,000 個文檔 0.108 USD
文檔刪除每 100,000 個文檔 0.012 USD
存儲數據$0.108/GiB/月

鹽湖城

鹽湖城

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.036 USD
文檔寫入每 100,000 個文檔 0.108 USD
文檔刪除每 100,000 個文檔 0.012 USD
存儲數據$0.108/GiB/月

弗吉尼亞北部

弗吉尼亞北部

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.033 USD
文檔寫入每 100,000 個文檔 0.099 USD
文檔刪除每 100,000 個文檔 0.011 USD
存儲數據$0.099/GiB/月

拉斯維加斯

拉斯維加斯

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.033 USD
文檔寫入每 100,000 個文檔 0.099 USD
文檔刪除每 100,000 個文檔 0.011 USD
存儲數據$0.165/GiB/月

南卡羅來納

南卡羅來納

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.06 USD
文檔寫入每 100,000 個文檔 0.18 USD
文檔刪除每 100,000 個文檔 0.02 USD
存儲數據$0.18/GiB/月

蒙特利爾

蒙特利爾

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.033 USD
文檔寫入每 100,000 個文檔 0.099 USD
文檔刪除每 100,000 個文檔 0.011 USD
存儲數據$0.099/GiB/月

聖保羅

聖保羅

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.045 USD
文檔寫入每 100,000 個文檔 0.135 USD
文檔刪除每 100,000 個文檔 0.015 USD
存儲數據$0.135/GiB/月

歐洲(多區域)

歐洲(多區域)

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.06 USD
文檔寫入每 100,000 個文檔 0.18 USD
文檔刪除每 100,000 個文檔 0.02 USD
存儲數據$0.18/GiB/月

蘇黎世

蘇黎世

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.042 USD
文檔寫入每 100,000 個文檔 0.126 USD
文檔刪除每 100,000 個文檔 0.014 USD
存儲數據$0.210/GiB/月

華沙

華沙

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.039 USD
文檔寫入每 100,000 個文檔 0.117 USD
文檔刪除每 100,000 個文檔 0.013 USD
存儲數據$0.195/GiB/月

法蘭克福

法蘭克福

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.039 USD
文檔寫入每 100,000 個文檔 0.117 USD
文檔刪除每 100,000 個文檔 0.013 USD
存儲數據$0.117/GiB/月

倫敦

倫敦

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.039 USD
文檔寫入每 100,000 個文檔 0.117 USD
文檔刪除每 100,000 個文檔 0.013 USD
存儲數據$0.117/GiB/月

孟買

孟買

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.035 USD
文檔寫入每 100,000 個文檔 0.104 USD
文檔刪除每 100,000 個文檔 0.012 USD
存儲數據$0.104/GiB/月

悉尼

悉尼

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.038 USD
文檔寫入每 100,000 個文檔 0.115 USD
文檔刪除每 100,000 個文檔 0.013 USD
存儲數據$0.115/GiB/月

墨爾本

墨爾本

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.034 USD
文檔寫入每 100,000 個文檔 0.103 USD
文檔刪除每 100,000 個文檔 0.011 USD
存儲數據$0.171/GiB/月

香港

香港

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.06 USD
文檔寫入每 100,000 個文檔 0.18 USD
文檔刪除每 100,000 個文檔 0.02 USD
存儲數據$0.18/GiB/月

台灣

台灣

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.0345 USD
文檔寫入每 100,000 個文檔 0.1042 USD
文檔刪除每 100,000 個文檔 0.0115 USD
存儲數據$0.1725/GiB/月

東京

東京

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.038 USD
文檔寫入每 100,000 個文檔 0.115 USD
文檔刪除每 100,000 個文檔 0.013 USD
存儲數據$0.115/GiB/月

新加坡

新加坡

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.0369 USD
文檔寫入每 100,000 個文檔 0.1107 USD
文檔刪除每 100,000 個文檔 0.0123 USD
存儲數據$0.1846/GiB/月

雅加達

雅加達

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.038 USD
文檔寫入每 100,000 個文檔 0.115 USD
文檔刪除每 100,000 個文檔 0.013 USD
存儲數據$0.192/GiB/月

大阪

大阪

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.038 USD
文檔寫入每 100,000 個文檔 0.115 USD
文檔刪除每 100,000 個文檔 0.013 USD
存儲數據$0.195/GiB/月

漢城

漢城

超出免費配額的定價
文檔讀取每 100,000 個文檔 0.038 USD
文檔寫入每 100,000 個文檔 0.115 USD
文檔刪除每 100,000 個文檔 0.013 USD
存儲數據$0.192/GiB/月

如果您使用美元以外的貨幣付款,則適用雲平台 SKU上以您的貨幣列出的價格。

讀取、寫入和刪除

您需要為使用 Cloud Firestore 執行的每個文檔讀取、寫入和刪除付費。

寫入和刪除的費用很簡單。對於寫入,每個setupdate操作都算作一次寫入。

讀取費用有一些細微差別,您應該記住。以下部分詳細解釋了這些細微差別。

聚合查詢

對於諸如count()之類的聚合查詢,您需要為每批最多 1000 個與查詢匹配的索引條目讀取一份文檔。對於匹配 0 個索引條目的聚合查詢,最低收費為讀取一個文檔。

例如,匹配 0 到 1000 個索引條目的count()操作按讀取一個文檔計費。對於匹配 1500 個索引條目的count()操作,您需要支付 2 次文檔讀取費用。

監聽查詢結果

Cloud Firestore 允許您監聽查詢結果並在查詢結果發生變化時獲得實時更新。

當您收聽查詢結果時,每次添加或更新結果集中的文檔時,您都需要為一次讀取付費。由於文檔已更改而從結果集中刪除文檔時,您也需要為閱讀付費。 (相比之下,刪除文檔後,您無需為閱讀付費。)

移動和網頁 SDKS 中監聽器的計費也取決於是否啟用離線持久化

  • 如果啟用了離線持久化並且監聽器斷開連接超過 30 分鐘(例如,如果用戶離線),您將像您發出一個全新的查詢一樣按讀取收費。

  • 如果禁用離線持久性,則每當偵聽器斷開連接並重新連接時,您都將被收取讀取費用,就好像您發出了全新的查詢一樣。

管理大型結果集

Cloud Firestore 具有多項功能,可幫助您管理返回大量結果的查詢:

  • 游標,它允許您恢復長時間運行的查詢。
  • 頁面標記,可幫助您對查詢結果進行分頁。
  • Limits ,指定要檢索的結果數量。
  • 偏移量,它允許您跳過固定數量的文檔。

使用游標、頁面令牌和限制不會產生額外費用。事實上,這些功能可以幫助您通過只閱讀您實際需要的文檔來節省資金。

但是,當您發送包含偏移量的查詢時,您需要為每個跳過的文檔支付一次讀取費用。例如,如果您的查詢使用偏移量 10,並且查詢返回 1 個文檔,則您需要為 11 次讀取付費。由於這種額外成本,您應該盡可能使用游標而不是偏移量。

文檔讀取以外的查詢

對於文檔讀取以外的查詢,例如請求集合 ID 列表,您需要為讀取一個文檔付費。如果獲取完整的一組結果需要多個請求(例如,如果您使用分頁),則每個請求需要支付一次費用。

最低查詢費用

對於您執行的每個查詢,即使查詢未返回任何結果,也至少會收取一份文檔讀取費用。

Cloud Firestore 安全規則

對於移動和 Web 客戶端庫,如果您的Cloud Firestore 安全規則使用exists()get()getAfter()從您的數據庫中讀取一個或多個文檔,您需要為額外的讀取付費,如下所示:

  • 您需要為評估 Cloud Firestore 安全規則所需的讀取付費。

    例如,如果您的規則引用了三個文檔,但 Cloud Firestore 只需讀取其中兩個文檔來評估您的規則,則您需要為從屬文檔額外讀取兩次而付費。

    即使您的規則多次引用該文檔,您也只需為每個相關文檔支付一次閱讀費用。

  • 您只需為每個請求支付一次規則評估費用。

    因此,與一次讀取一個文檔相比,讀取多個文檔的成本更低,因為讀取多個文檔需要的請求更少。

  • 當您偵聽查詢結果時,您需要為以下所有情況的規則評估付費:

    • 當您發出查詢時。
    • 每次更新查詢結果。
    • 任何時候用戶的設備離線,然後重新在線。
    • 任何時候你更新你的規則。
    • 任何時候更新規則中的依賴文件。

存儲空間

您需要根據存儲在 Cloud Firestore 中的數據量付費,包括存儲開銷。開銷量包括元數據、自動索引和復合索引。 Cloud Firestore 中存儲的每個文檔都需要以下元數據:

  • 文檔ID,包括集合ID和文檔名稱。
  • 每個字段的名稱和值。由於 Cloud Firestore 是無架構的,因此文檔中每個字段的名稱必須與字段值一起存儲。
  • 引用文檔的任何單字段索引和復合索引。每個索引條目都包含集合 ID;任意數量的字段值,具體取決於索引定義;和文檔名稱。

存儲大小計算中了解如何計算 Cloud Firestore 存儲。您可以通過訪問 GCP 控制台中的App Engine 配額詳細信息頁面來查看數據庫使用的存儲量。

網絡帶寬

您需要為 Cloud Firestore 請求使用的網絡帶寬付費,如以下部分所示。 Cloud Firestore 請求的網絡帶寬成本取決於請求的響應大小、Cloud Firestore 數據庫的位置以及響應的目的地。

Cloud Firestore 根據序列化消息格式計算響應大小。協議開銷(例如 SSL 開銷)不計入網絡帶寬使用量。被您的 Cloud Firestore 安全規則拒絕的請求不計入網絡帶寬使用量。

要了解您使用了多少網絡帶寬,您可以使用 GCP Console將您的賬單數據導出到一個文件中。

一般網絡定價

對於源自 Google Cloud Platform 的請求(例如,來自在 Google Compute Engine 上運行的應用程序),您需要按以下方式付費:

流量類型價格
入口自由
區域內出口自由
同一多區域中區域之間的出口自由
美國各區域之間的出站流量(每 GiB) 0.01 美元(每月前 10 GiB 免費)
區域之間的出口,不包括美國區域之間的流量Google Cloud Platform 互聯網出口率

如果您使用美元以外的貨幣付款,則適用雲平台 SKU上以您的貨幣列出的價格。

Cloud Firestore 還需要為以下內容支付額外的互聯網出站費用:

  • 區域之間的 Google Cloud 請求,不包括美國區域之間的流量
  • 來自 Google Cloud 外部的請求(例如,來自用戶的移動設備)

請參閱Google Cloud 互聯網出口率

查看定價示例

要了解 Cloud Firestore 計費成本在實際示例應用中是如何產生的,請參閱Cloud Firestore 計費示例

管理支出

為幫助避免賬單中出現意外費用,請使用 Google Cloud 的賬單控制台設置每月預算和提醒

要監控您的 Cloud Firestore 使用情況,請打開 Firebase 控制台中的 Cloud Firestore使用情況選項卡。使用儀表板來衡量您在不同時間段內的使用情況。