配額與限制
本頁面說明 Firestore 的要求配額與限制。
免費配額
Firestore 提供免費配額,您無須付費即可開始使用這項服務。如果需要更多配額,則須為 Google Cloud 專案啟用計費功能。
您每天可使用的配額有一定的限制,系統會在太平洋時間凌晨 12 點左右重設配額。
下表彙整了免費配額:
| 免費方案 | 配額 |
|---|---|
| 儲存的資料量 | 1 GiB |
| 文件讀取次數 | 每天 50,000 次 |
| 文件寫入次數 | 每天 20,000 次 |
| 文件刪除次數 | 每天 20,000 次 |
| 傳出資料移轉 | 每月 10 GiB |
下列作業和功能不包含免費用量。如要使用下列功能,必須啟用計費功能:
- 依存留時間刪除
- PITR 資料
- 備份資料
- 復原作業
- 複製作業
如要進一步瞭解這些功能的計費方式,請參閱儲存空間定價。
標準限制
下表列出與使用 Firestore 相關的各項限制。除非另有註明,否則這些都是硬性限制。
資料庫
| 限制 | 詳細資料 |
|---|---|
| 每個專案的資料庫數量上限 |
100 如要提高這項上限,請與支援團隊聯絡。 |
| 每個專案的客戶自行管理的加密金鑰 (CMEK) 資料庫數量上限 |
0 這項功能僅限許可清單中的人員使用,因此配額預設為 0。如要申請提高配額,請填寫 CMEK 存取權要求表單。 |
集合、文件和欄位
| 限制 | 說明 |
|---|---|
| 集合 ID 限制 |
|
| 子集合深度上限 | 100 |
| 文件 ID 限制 |
|
| 檔案名稱大小上限 | 6 KiB |
| 檔案大小上限 | 1 MiB (1,048,576 個位元組) |
| 欄位名稱限制 |
|
| 欄位名稱大小上限 | 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 秒 |
可在一項 Commit 作業或交易中對一個文件執行的欄位轉換工作數量上限 |
500 |
索引
本頁面說明 Firestore 的要求配額與限制。
| 限制 | 說明 |
|---|---|
| 資料庫的複合式索引數量上限 |
|
| 資料庫的單一欄位設定數量上限 |
一個欄位層級設定可包含相同欄位的多項設定。舉例來說,如果同一欄位有單一欄位索引豁免設定和存留時間政策,則會計入上限,視為一項欄位設定。 |
|
每個文件的索引項目數量上限 |
40,000 個 索引項目數量是文件中下列兩種項目的總和:
如要瞭解 Firestore 如何將文件和一組索引轉換為索引項目,請參閱這個索引項目計數範例。 |
| 複合式索引的欄位數量上限 | 100 |
| 索引項目大小上限 |
7.5 KiB 如要瞭解 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 API 配額」和「App Engine 配額」頁面中查看 Firestore 用量。