本頁面介紹 Cloud Firestore 中文檔的存儲大小、文檔名稱、字段和索引條目。
您可以在Cloud Firestore 定價中了解此存儲的成本。字符串大小
字符串大小計算為UTF-8 編碼字節數 + 1。
以下內容存儲為字符串:
- 集合 ID
- 字符串文檔 ID
- 文檔名稱
- 字段名稱
- 字符串字段值
例如:
- 集合 ID
tasks
使用 5 個字節 + 1 個字節,總共 6 個字節。 - 字段名
description
使用11字節+1字節,共12字節。
文檔 ID 大小
文檔 ID 的大小是字符串 ID 的字符串大小或整數 ID 的 8 個字節。
文檔名稱大小
文檔名稱的大小是以下各項的總和:
- 文檔路徑中每個集合ID和文檔ID的大小
- 16 個附加字節
對於子集合users/jeff/tasks
中字符串文檔 ID 為my_task_id
的文檔,文檔名稱大小為 6 + 5 + 6 + 11 + 16 = 44 字節:
- 6 個字節用於
users
集合 ID - 5 個字節用於
jeff
文檔 ID - 6 個字節用於
tasks
集合 ID - 11 個字節用於
my_task_id
文檔 ID - 16 個附加字節
字段值大小
下表按類型顯示字段值的大小。
類型 | 尺寸 |
---|---|
大批 | 其值大小的總和 |
布爾值 | 1字節 |
字節 | 字節長度 |
日期和時間 | 8字節 |
浮點數 | 8字節 |
地理位置 | 16字節 |
整數 | 8字節 |
地圖 | 地圖的大小,計算方式與文檔大小相同 |
無效的 | 1字節 |
參考 | 文檔名稱大小 |
文本字符串 | UTF-8 編碼字節數 + 1 |
例如,名為done
布爾字段將使用 6 個字節:
-
done
字段名稱的 5 個字節 - 1 個字節用於布爾值
文檔尺寸
文檔的大小是以下各項的總和:
此示例適用於子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
字段的總大小為 71 字節:
字段名稱和值 | 字段大小(以字節為單位) |
---|---|
"type": "Personal" | 14 5 為字段名 + 9 為字段的字符串值 |
"done": false | 6個 5 為字段名 + 1 為字段的布爾值 |
"priority": 1 | 17 9 為字段名 + 8 為字段的整數值 |
"description": "Learn Cloud Firestore" | 34 12 為字段名 + 22 為字段的字符串值 |
所以文檔大小是 44 + 71 + 32 = 147 字節:
- 文檔名稱 44 個字節
- 字段 71 個字節
- 32 個附加字節
索引條目大小
對於單字段索引和復合索引,索引條目大小的計算方式如下。
單字段索引條目大小
單字段索引條目的大小取決於索引的範圍是集合還是集合組。
收集範圍
具有集合範圍的單字段索引中條目的大小是以下各項的總和:
考慮子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
對於索引done
字段的集合範圍的單字段索引,該索引中條目的總大小為 109 字節:
- 文檔名稱
users/jeff/tasks/my_task_id
的 44 個字節 - 父文檔的文檔名稱
users/jeff
的 27 個字節 done
字段名稱的 5 個字節- 1 個字節用於布爾字段值
- 32 個附加字節
集合組範圍
具有集合組範圍的單字段索引中條目的大小是以下各項的總和:
考慮子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
對於索引done
字段的集合組範圍的單字段索引,該索引中條目的總大小為 98 字節:
- 文檔名稱
users/jeff/tasks/my_task_id
的 44 個字節 done
字段名稱的 5 個字節- 1 個字節用於布爾字段值
- 48 個附加字節
複合索引條目大小
複合索引中條目的大小取決於索引的範圍是集合還是集合組。
收集範圍
具有集合範圍的複合索引中索引條目的大小是以下各項的總和:
考慮子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
對於具有索引done
和priority
字段(均升序)的集合範圍的複合索引,該索引中條目的總大小為 112 字節:
- 文檔名稱
users/jeff/tasks/my_task_id
的 44 個字節 - 父文檔的文檔名稱
users/jeff
的 27 個字節 - 1 個字節用於布爾字段值
- 8 個字節用於整數字段值
- 32 個附加字節
集合組範圍
具有集合組範圍的複合索引中索引條目的大小是以下各項的總和:
考慮子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
對於一個集合組作用域為done
和priority
字段(均為升序)的複合索引,該索引中索引條目的總大小為 85 字節:
- 文檔名稱
users/jeff/tasks/my_task_id
的 44 個字節 - 1 個字節用於布爾字段值
- 8 個字節用於整數字段值
- 32 個附加字節
下一步是什麼
了解Cloud Firestore 定價。 ,本頁面介紹 Cloud Firestore 中文檔的存儲大小、文檔名稱、字段和索引條目。
您可以在Cloud Firestore 定價中了解此存儲的成本。字符串大小
字符串大小計算為UTF-8 編碼字節數 + 1。
以下內容存儲為字符串:
- 集合 ID
- 字符串文檔 ID
- 文檔名稱
- 字段名稱
- 字符串字段值
例如:
- 集合 ID
tasks
使用 5 個字節 + 1 個字節,總共 6 個字節。 - 字段名
description
使用11字節+1字節,共12字節。
文檔 ID 大小
文檔 ID 的大小是字符串 ID 的字符串大小或整數 ID 的 8 字節。
文檔名稱大小
文檔名稱的大小是以下各項的總和:
- 文檔路徑中每個集合ID和文檔ID的大小
- 16 個附加字節
對於子集合users/jeff/tasks
中字符串文檔 ID 為my_task_id
的文檔,文檔名稱大小為 6 + 5 + 6 + 11 + 16 = 44 字節:
- 6 個字節用於
users
集合 ID - 5 個字節用於
jeff
文檔 ID - 6 個字節用於
tasks
集合 ID - 11 個字節用於
my_task_id
文檔 ID - 16 個附加字節
字段值大小
下表按類型顯示字段值的大小。
類型 | 尺寸 |
---|---|
大批 | 其值大小的總和 |
布爾值 | 1字節 |
字節 | 字節長度 |
日期和時間 | 8字節 |
浮點數 | 8字節 |
地理位置 | 16字節 |
整數 | 8字節 |
地圖 | 地圖的大小,計算方式與文檔大小相同 |
無效的 | 1字節 |
參考 | 文檔名稱大小 |
文本字符串 | UTF-8 編碼字節數 + 1 |
例如,名為done
布爾字段將使用 6 個字節:
-
done
字段名稱的 5 個字節 - 1 個字節用於布爾值
文檔尺寸
文檔的大小是以下各項的總和:
此示例適用於子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
字段的總大小為 71 字節:
字段名稱和值 | 字段大小(以字節為單位) |
---|---|
"type": "Personal" | 14 5 為字段名 + 9 為字段的字符串值 |
"done": false | 6個 5 為字段名 + 1 為字段的布爾值 |
"priority": 1 | 17 9 為字段名 + 8 為字段的整數值 |
"description": "Learn Cloud Firestore" | 34 12 為字段名 + 22 為字段的字符串值 |
所以文檔大小是 44 + 71 + 32 = 147 字節:
- 文檔名稱 44 個字節
- 字段 71 個字節
- 32 個附加字節
索引條目大小
對於單字段索引和復合索引,索引條目大小的計算方式如下。
單字段索引條目大小
單字段索引條目的大小取決於索引的範圍是集合還是集合組。
收集範圍
具有集合範圍的單字段索引中條目的大小是以下各項的總和:
考慮子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
對於索引done
字段的集合範圍的單字段索引,該索引中條目的總大小為 109 字節:
- 文檔名稱
users/jeff/tasks/my_task_id
的 44 個字節 - 父文檔的文檔名稱
users/jeff
的 27 個字節 done
字段名稱的 5 個字節- 1 個字節用於布爾字段值
- 32 個附加字節
集合組範圍
具有集合組範圍的單字段索引中條目的大小是以下各項的總和:
考慮子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
對於索引done
字段的集合組範圍的單字段索引,該索引中條目的總大小為 98 字節:
- 文檔名稱
users/jeff/tasks/my_task_id
的 44 個字節 done
字段名稱的 5 個字節- 1 個字節用於布爾字段值
- 48 個附加字節
複合索引條目大小
複合索引中條目的大小取決於索引的範圍是集合還是集合組。
收集範圍
具有集合範圍的複合索引中索引條目的大小是以下各項的總和:
考慮子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
對於具有索引done
和priority
字段(均升序)的集合範圍的複合索引,該索引中條目的總大小為 112 字節:
- 文檔名稱
users/jeff/tasks/my_task_id
的 44 個字節 - 父文檔的文檔名稱
users/jeff
的 27 個字節 - 1 個字節用於布爾字段值
- 8 個字節用於整數字段值
- 32 個附加字節
集合組範圍
具有集合組範圍的複合索引中索引條目的大小是以下各項的總和:
考慮子集合users/jeff/tasks
中的文檔,其字符串文檔 ID 為my_task_id
:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
對於一個集合組作用域為done
和priority
字段(均為升序)的複合索引,該索引中索引條目的總大小為 85 字節:
- 文檔名稱
users/jeff/tasks/my_task_id
的 44 個字節 - 1 個字節用於布爾字段值
- 8 個字節用於整數字段值
- 32 個附加字節