Firestore 定價

本文詳細說明 Firestore 的計費方式,

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

定價總覽

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

  • 實際讀取、寫入及刪除的文件數量
  • 滿足查詢而讀取的索引項目數量進一步瞭解索引讀取作業
  • 資料庫使用的儲存空間量,當中包含中繼資料和索引的經常用量。
  • 您使用的網路頻寬流量

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

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

免費配額

Firestore 提供免費配額, (default) 資料庫。下表列出免費配額。 如果您需要更多配額,則須為 Google Cloud 專案啟用計費功能

您每天可使用的配額有一定的限制,系統會在太平洋時間凌晨 12 點左右重設配額。

只有 (default) 資料庫才符合免費配額資格。

免費方案 配額
儲存的資料量 1 GiB
文件讀取次數 每天 50,000 次
文件寫入次數 每天 20,000 次
文件刪除次數 每天 20,000 次
傳出資料傳輸 每月 10 GiB

以下作業和功能不包含免費用量。 您必須啟用計費功能,才能使用以下功能:

  • 使用已命名 (非預設) 資料庫
  • 存留時間刪除
  • 時間點復原資料
  • 備份資料
  • 復原作業

如要進一步瞭解這些功能的計費方式,請參閱 儲存空間定價

依所在位置計價

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

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

已命名資料庫沒有免費配額

必須啟用計費功能,才能建立自行命名 (非預設) 的資料庫。

建立或刪除自行命名的資料庫不會產生額外費用 但這些資料庫不符合免費配額的資格不過, 針對這些已命名資料庫產生的用量計費。

讀取、寫入與刪除作業

系統會向您收取為了滿足查詢而讀取的文件和索引項目費用。你正在 您必須支付多少費用。

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

讀取作業的費用 您必須留意的細微差異以下各節會進一步說明。

索引項目讀取

每批最多 1,000 個索引項目,系統會以 1 次讀取作業向您收費 讀取的查詢,但以下情況除外:

  • 針對 最鄰近的向量搜尋查詢,您必須支付一筆 讀取作業的每個批次最多可讀取 100 個 kNN 向量索引項目。

    舉例來說,如果下列向量搜尋查詢含有 limit: 5 會傳回 5 份文件,並讀取 1550 個 kNN 向量索引項目 系統會向您收取 5 次讀取文件的讀取作業和 16 次讀取作業的費用 索引項目的作業:

    // Requires single-field vector index
    const vectorQuery: VectorQuery = db.collection('cities').findNearest('embedding_field', FieldValue.vector([3.0, 1.0, 2.0]), {
      limit: 5,
      distanceMeasure: 'EUCLIDEAN'
    });
    
  • 查詢時,如果查詢範圍不超過一個範圍,就不算是索引項目費用 讀取。

    舉例來說,下列查詢包含一個相等欄位 (age) 和 範圍欄位 (start_date),且對於讀取的索引項目不會產生費用:

    db.collection("employees").whereEqualTo("age", 35)
                              .whereGreaterThanOrEqualTo("start_date", new Date(2020, 1, 1))
    

    以下查詢包含兩個範圍欄位 (agestart_date), 針對索引項目讀取作業產生費用:

    db.collection("employees").whereGreaterThanOrEqualTo("age", 35)
                              .whereGreaterThanOrEqualTo("start_date", new Date(2020, 1, 1))
    

    按子句排序顯示的欄位,會視為範圍欄位, 查詢中至少有一個其他範圍欄位。 因此,以下查詢包含兩個範圍欄位。 (agestart_date),系統會針對讀取的索引項目收費:

    db.collection("employees").whereGreaterThanOrEqualTo("age", 35)
                              .orderBy("start_date")
    

    系統會將 __name__ 欄位視為範圍欄位,即使 用於等式篩選器因此,以下查詢包含兩個範圍 欄位 (age__name__),且系統會針對讀取以下項目的索引項目收費:

    db.collection("employees").whereIn("__name__", Arrays.asList("/employees/Alice", "/employees/Bob"))
                              .orderBy("age")
    

匯總查詢

用於匯總查詢 例如 count()sum()avg() 您會針對查詢讀取的索引項目收費,如 如上所述。讀取 0 索引的匯總查詢 系統會收取至少一次文件讀取費用。

例如,count() 作業讀取 0 到 1000 個索引項目 只會收取一次文件讀取作業的費用適用於讀取 1500 的 count() 作業 索引項目,系統會向您收取 2 次文件讀取費用。

如要進一步瞭解使用的索引以及讀取的索引項目,請使用 查詢說明

監聽查詢結果

Firestore 可讓您監聽查詢結果,並在查詢結果變更時取得即時更新。

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

行動和網頁 SDKS 事件監聽器的計費方式也取決於 離線持續性是否已啟用:

  • 如果已啟用離線持續性功能,且監聽器連線中斷, 超過 30 分鐘 (例如使用者離線時), 系統會視為您核發全新的文件和索引項目,收取讀取費用 。

  • 如果停用離線保存功能,您必須支付文件費用, 讀取索引項目時,就像是 會中斷和重新連線

,瞭解如何調查及移除這項存取權。

管理大型結果集

針對會傳回大量結果的查詢,Firestore 提供數個協助您管理查詢的功能:

  • 游標:若是執行長時間的查詢,可使用游標繼續執行。
  • 頁面符記:可協助您將查詢結果分頁。
  • 限額:可指定要擷取的結果數量。
  • 偏移:可讓您略過固定數量的文件。

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

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

文件讀取作業以外的查詢

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

查詢作業的基本費用

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

Firestore 安全性規則

以行動和網路用戶端程式庫來說,如果您的 Firestore 安全性規則使用了 exists()get()getAfter() 讀取資料庫中的一或多份文件,系統會按照下列規則向您收取這些額外讀取作業的費用:

  • 系統會按照評估 Firestore 安全性規則所需的讀取作業次數向您收費。

    舉例來說,如果您的規則參照了三份文件,但 Firestore 僅需讀取其中兩份文件即可評估您的規則,系統便會向您收取額外兩次的文件讀取費用,即讀取這兩份相關文件的費用。

    即便規則參照同一份相關文件的次數超過一次,系統也只會向您收取讀取一次的費用。

  • 在一項要求中,系統僅會向您收取一次規則評估費用。

    因此,相較於一次讀取一份文件,一次讀取多份文件的費用會較低,因為一次讀取多份文件所需的要求數量較少。

  • 您在監聽查詢結果時,系統會在下列各個情況中向您收取規則評估費用:

    • 您發出查詢時。
    • 每次更新查詢結果時。
    • 每次使用者的裝置離線後又重新連線時。
    • 每次您更新規則時。
    • 每次您更新規則中的相關文件時。

資料庫儲存空間大小

系統會針對您儲存在 Firestore 中的資料量向您收費,當中包含儲存空間的經常用量。經常用量包含中繼資料 索引和複合式索引

儲存在 Firestore 中的每份文件都必須含有下列中繼資料:

  • 文件 ID,包括集合 ID 和文件名稱。
  • 每個欄位的名稱和值。由於 Firestore 無結構定義,文件中的每個欄位名稱均須與欄位值儲存在同一處。
  • 參照文件的任何單一欄位和複合式索引。每個索引項目均包含集合 ID、任意數量的欄位值 (數量取決於索引定義) 和文件名稱。

儲存空間費用是以每月 GiB 計算,且每日計算。Firestore 是每日測量的資料庫大小從一個月開始 計算資料庫儲存空間大小時,這些樣本點會經過平均值。 這個平均值乘以儲存空間單位價格 (GiB-月)

如要瞭解 Firestore 儲存空間大小的計算方式,請參閱儲存空間大小 計算結果。

時間點復原資料

如果啟用「時間點復原」PITR功能,系統會向您收取 PITR 的儲存空間費用 資料。多數客戶都會發現,PTR 資料儲存空間的整體成本為 與資料庫的儲存費用類似

時間點復原 (PITR) 的儲存空間費用是以每月 GiB 計算, 是每日計算的Firestore 每天都會測量資料庫的大小。超過 計算當月週期的樣本點時, 資料庫儲存空間大小這個平均值乘以單價 PITR (每月 GiB)。

舉例來說,假設資料庫在 每月 1 GiB,啟用時間點復原功能,也就是啟用的時間點復原 (PITR) 功能 資料大小也是 1 GiB

最低計費方式:即使您未使用 PITR 儲存空間,系統仍會向您收取最多 1 天的時間點復原費用 停用後一天內停用時間點復原功能。

備份資料與還原作業

啟用備份功能後,必須為 建立資料庫備份備份的儲存空間大小等於 以及備份時的資料庫大小

備份的儲存空間費用是以每月 GiB 計算。一個月下來 每個備份的保留天數 (當月平均值) 每次備份的費用都是根據 將備份資料乘以備份在當月中所佔的比例 乘以單位價格

執行還原作業時,Firestore 會測量 還原作業的備份大小。備份大小為 乘以還原作業的單位價格 (GiB)。

查詢說明

使用 Firestore 查詢說明會產生費用。

以預設選項說明查詢時,不會執行索引讀取作業 執行任務無論查詢的複雜度為何,系統都會收取一項讀取作業的費用。

以分析選項說明查詢時,建立索引和讀取 作業執行,因此系統會照常收取查詢費用。由於沒有 有關說明及分析活動的額外費用,只有一般收費 適合執行查詢的狀態

網路頻寬

系統會針對 Firestore 要求使用的網路頻寬向您收費,如以下各節所示。Firestore 要求的網路頻寬費用取決於要求的回應大小、Firestore 資料庫的所在位置,以及回應的目的地。

Firestore 會以序列化訊息格式計算回應大小。安全資料傳輸層 (SSL) 流量等通訊協定流量不會計入網路頻寬用量,遭 Firestore 安全性規則拒絕的要求亦然。

瞭解網路用量 可以使用 Google Cloud 控制台匯出已使用的頻寬 將資料匯出為檔案

一般網路定價

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

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

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

網際網路資料移轉速率

你必須為下列項目支付網際網路資料移轉費用:

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

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

監控用量

如要瞭解如何監控 Firestore 用量,請參閱 Monitoring 用量

管理費用

請設定每月預算與快訊,以便管理您的費用。

Google Cloud 預算與快訊

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

請按照這些操作說明設定每月預算,並 您可以在 Google Cloud 控制台中建立快訊

計費示例

如要透過實際的範例應用程式瞭解 Firestore 帳單費用累計方式,請參閱 Firestore 帳單範例的相關說明。

後續步驟

索取客製化報價

Google Cloud 提供「即付即用」計費模式,您只需要為所用服務付費。貴機構如需索取客製化的報價,請與我們的銷售團隊聯絡。
聯絡銷售人員