本指南來瞭解 Cloud Firestore 的限制, 並查看 Cloud Firestore 定價,瞭解完整的 Cloud Firestore 費用,包括應留意的事項。
監控您的使用情況
如要監控 Cloud Firestore 用量,請開啟 Cloud Firestore 「用量」分頁 。請使用資訊主頁, 時間範圍。
在 Google Cloud 控制台中查看詳細的用量資訊
建立 Firebase 專案時,也會一併建立 Google Cloud 專案。 Cloud Firestore API 配額 和 App Engine 配額 Google Cloud 控制台的頁面會追蹤 Cloud Firestore 用量和配額 可能不準確或不適當
免費配額
Cloud Firestore 提供免費配額,讓您可以開始使用
(default)
資料庫。下表列出免費配額。
如果您需要更多配額,則須為 Google Cloud 專案啟用計費功能。
您每天可使用的配額有一定的限制,系統會在太平洋時間凌晨 12 點左右重設配額。
只有 (default)
資料庫才符合免費配額資格。
免費方案 | 配額 |
---|---|
儲存的資料量 | 1 GiB |
文件讀取次數 | 每天 50,000 次 |
文件寫入次數 | 每天 20,000 次 |
文件刪除次數 | 每天 20,000 次 |
傳出資料傳輸 | 每月 10 GiB |
以下作業和功能不包含免費用量。 您必須啟用計費功能,才能使用以下功能:
- 使用已命名 (非預設) 資料庫
- 存留時間刪除
- 時間點復原資料
- 備份資料
- 復原作業
如要進一步瞭解這些功能的計費方式,請參閱 儲存空間定價。
標準限制
下表說明 例如 Cloud Firestore除非另有註明,否則這些限制為嚴格限制。
資料庫
限制 | 詳細資料 |
---|---|
每項專案的資料庫數量上限 |
100 你可以 與支援團隊聯絡 要求提高此上限 |
集合、文件和欄位
限制 | 說明 |
---|---|
集合 ID 限制 |
|
子集合深度上限 | 100 |
文件 ID 限制 |
|
檔案名稱大小上限 | 6 KiB |
檔案大小上限 | 1 MiB (1,048,576 個位元組) |
欄位名稱限制 | 必須使用有效的 UTF-8 字元 |
欄位名稱大小上限 | 1,500 個位元組 |
欄位路徑限制 |
` )。舉例來說,foo.`x&y` 是指 foo 欄位下以巢狀結構為基礎的 x&y 欄位。如要使用倒引號字元建立欄位名稱,請使用反斜線字元 (\ ) 逸出反引號字元。為了方便起見,您可以透過 FieldPath 物件的形式傳遞欄位路徑,避免使用半形引號括住的欄位名稱 (例如,請參閱 JavaScript FieldPath)。
|
欄位路徑大小上限 | 1,500 個位元組 |
欄位值大小上限 | 1 MiB 減去 89 個位元組 (1,048,487 個位元組) |
對應關係或陣列中欄位的深度上限 | 20 對應和陣列欄位會為物件的整體深度新增一個等級。舉例來說,以下物件的總深度為三個層級:
|
寫入作業和交易
除了這些限制之外, 規模設計的最佳做法。
限制 | 說明 |
---|---|
API 請求大小上限 | 10 MiB |
交易時間限制 | 270 秒,閒置到期時間為 60 秒 |
索引
限制 | 說明 |
---|---|
資料庫的複合式索引數量上限 |
|
資料庫的單一欄位設定數量上限 |
單一欄位層級設定 同一個欄位可以包含多個設定。例如: 單一欄位的索引豁免項目和存留時間政策 只會計為一個欄位設定,計入限制。 |
每個文件的索引項目數量上限 |
40,000 個 索引項目數量是文件中下列兩種項目的總和:
如要瞭解 Cloud Firestore 如何旋轉文件和一組 編入索引為索引項目,請參閱 這個索引項目計數範例。 |
複合式索引中的欄位數量上限 | 100 |
索引項目大小上限 |
7.5 KiB 如要瞭解 Cloud Firestore 計算索引項目大小的方式,請參閱索引項目大小一節。 |
文件的索引項目大小總計上限 |
8 MiB 大小總計是文件中下列兩種項目的總和: |
已建立索引的欄位值大小上限 |
1500 個位元組 超過 1500 個位元組的欄位值會遭到截斷。如果查詢中有欄位值遭截斷,系統可能會傳回不一致的結果。 |
存留時間 (TTL)
限制 | 詳細資料 |
---|---|
資料庫的單一欄位設定數量上限 |
單一欄位層級設定 同一個欄位可以包含多個設定。例如: 單一欄位的索引豁免項目和存留時間政策 只會計為一個欄位設定,計入限制。 |
匯出/匯入
以下限制適用於代管匯入及匯出作業:
限制 | 說明 |
---|---|
專案每分鐘允許的匯出與匯入要求總數上限 | 20 |
並行匯出與匯入作業的數量上限 | 50 |
匯出與匯入要求的集合 ID 篩選器數量上限 | 100 |
安全性規則
限制 | 說明 |
---|---|
每項要求的 exists() 、get() 和 getAfter() 呼叫數量上限 |
超過任一項限制都會引發權限遭拒的錯誤。 系統可能會快取部分的文件存取呼叫,已快取的呼叫不會計入限制中。 |
巢狀 match 陳述式深度上限 |
10 |
一組巢狀 match 陳述式中允許的路徑長度上限 (以路徑區段為單位) |
100 |
一組巢狀 match 陳述式中允許的路徑擷取變數數量上限 |
20 |
函式呼叫深度上限 | 20 |
函式引數數量上限 | 7 |
每個函式的 let 變數繫結上限 |
10 |
遞迴或循環函式呼叫的數量上限 | 0 (不允許) |
每個要求中經評估的運算式數量上限 | 1,000 個 |
規則集的大小上限 | 規則集必須遵守以下兩項大小限制:
|
管理支出
為避免帳單產生非預期的費用,請設定每月預算與快訊。
設定每月預算
如要追蹤 Cloud Firestore 費用,請在下列位置建立每月預算: 存取 Google Cloud 控制台預算並不會限制您的用量,但您可以將快訊設為 系統會在您接近或超過預計費用的 每月。
如要設定預算,請前往「帳單」頁面 建立預算 Cloud Billing 帳戶。您可以使用預設快訊設定 傳送快訊,在每月預算的不同百分比傳送通知。
進一步瞭解 設定預算和預算快訊。