定價

本文詳細說明 Cloud Firestore 的定價,並介紹如何限制及監控 Cloud Firestore 的使用費用。

如果您使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的相應貨幣價格來計費。

定價總覽

您在使用 Cloud Firestore 時,系統會根據下列項目向您收費:

  • 您執行的讀取、寫入和刪除作業次數
  • 資料庫使用的儲存空間量,當中包含中繼資料和索引的經常用量。
  • 您使用的網路頻寬流量

儲存空間用量和頻寬用量的計算單位為 GiB,1 GiB 為 230 個位元組,所有費用都會逐日累計。

下列各節詳細說明 Cloud Firestore 使用費用的計算方式。

依所在位置計價

下表列出在各個 Cloud Firestore 位置進行讀取、寫入、刪除和儲存作業的定價:

如果您使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的相應貨幣價格來計費。

讀取、寫入與刪除作業

每當您透過 Cloud Firestore 讀取、寫入及刪除文件時,系統都會向您收取費用。

寫入和刪除作業的計費方式相當簡單。以寫入作業來說,每項 setupdate 作業均會計為一次寫入。

不過請注意,讀取作業的計費方式略有不同,以下各節會進一步說明。

監聽查詢結果

Cloud Firestore 可讓您監聽查詢結果,並在查詢結果出現變更時取得即時最新消息。

您在監聽查詢結果時,只要系統在結果集文件中新增或更新內容,就會向您收取讀取作業費用。另外,如果文件從結果集中移除,系統也會向您收取讀取作業費用,這是因為文件已經過變更。反之,如果文件遭到刪除,系統並不會向您收取讀取作業費用。

另外,如果監聽器連線中斷超過 30 分鐘 (例如使用者離線時),系統會當做您發出了全新的查詢工作,進而向您收取讀取作業費用。

管理大型結果集

Cloud Firestore 提供多項功能,可協助您管理傳回大量結果的查詢作業:

  • 游標:可讓您繼續執行較為耗時的查詢作業。
  • 頁面符記:可協助您將查詢結果分頁。
  • 限額:可指定要擷取的結果數量。
  • 偏移:可讓您略過固定數量的文件。

使用游標、頁面符記和限額功能不會產生額外費用。事實上,這些功能可讓您僅讀取實際所需的文件,協助您節省費用。

不過,如果您傳送的查詢含有偏移值,系統會針對每份略過的文件向您收取讀取作業費用。舉例來說,如果偏移值為 10 的查詢傳回了 1 份文件,則系統會向您收取 11 次讀取作業的費用。因此,我們會建議您盡可能使用游標功能,而不要使用偏移功能,以免產生額外費用。

文件讀取作業以外的查詢

針對文件讀取作業以外的查詢 (例如要求集合 ID 清單的查詢),系統會向您收取一次文件讀取作業的費用。如果系統必須發出多次要求才能擷取完整的結果集 (例如您使用分頁功能時),則系統會針對每次要求向您收費。

查詢作業的基本費用

即便查詢未傳回任何結果,系統還是會針對您執行的各項查詢收取基本費用,也就是一次文件讀取作業的費用。

Cloud Firestore 安全性規則

以行動和網路用戶端程式庫來說,如果您的 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 主控台將帳單資料匯出為檔案

一般網路價格

針對 Google Cloud Platform 中元件產生的要求 (例如在 Google Compute Engine 中運作的應用程式產生的要求),系統會依據下列項目向您收取費用:

流量類型 費率
輸入 免費
在單一地區中輸出 免費
在同一個多地區中的不同地區之間輸出 免費
在美國境內的不同地區之間輸出 (每 GiB) $0.01 (每個月前 10 GiB 免費)
在不同地區之間輸出 (不含美國境內不同地區之間的流量) Google Cloud Platform 網際網路輸出費率

如果您使用美元以外的貨幣付費,系統將按照 Cloud Platform SKU 頁面上列出的相應貨幣價格來計費。

網際網路輸出費率

系統會依據下列項目向您收取網際網路輸出費用:

  • 不同地區之間的 Google Cloud Platform 要求 (不含美國境內不同地區之間的流量)
  • 從 Google Cloud Platform 以外位置發出的要求,例如使用者行動裝置產生的要求

監控用量

您可以在 App Engine 的「配額」頁面中查看 Cloud Firestore 的每日用量:

前往「配額」頁面

管理費用

您可以透過多個方式管理 Cloud Firestore 費用:

  • 如要管理儲存空間和資料庫作業的費用,請設定 App Engine 每日支出上限。
  • 如要管理網路頻寬的費用,請透過 Google Cloud Platform 的功能設定每月預算與快訊。

下列各節會提供更多詳細資訊。

App Engine 支出上限

App Engine 可讓您針對 App Engine 及其相關資源 (包括 Cloud Datastore 和 Cloud Firestore 資料庫) 設定每日支出上限。您設定的上限為概略值,而且應能處理突然增加資源用量。如果您超出每日支出上限,不在免費配額涵蓋範圍內的所有 Cloud Firestore 作業都會失敗。

如要設定每日支出上限,請透過 GCP 主控台啟用 GCP 專案的計費功能,並按照下列步驟操作:

  1. 在 GCP 主控台中開啟 App Engine 的「應用程式設定」頁面。

    開啟「應用程式設定」頁面

  2. 按一下 [編輯],然後指定支出上限。

  3. 按一下 [儲存],新的上限便會立即生效。

如果您在多項 GCP 專案中使用了 Cloud Firestore,請為各項專案重複執行上述步驟。

Google Cloud Platform 預算與快訊

GCP 可讓您針對所有 GCP 服務設定每月預算。您可以使用每月預算來監控 GCP 的整體費用,包括 Cloud Firestore 的網路頻寬費用。您可以在設定預算後建立快訊,以便在費用接近預算上限時接收電子郵件通知。

計入您 App Engine 支出上限的費用也會計入您的每月預算。

按照這些操作說明設定每月預算,並在 GCP 主控台中建立快訊。

計費示例

如要瞭解實際範例應用程式的 Cloud Firestore 帳單費用累計方式,請查看 Cloud Firestore 帳單範例

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Firestore