Bu sayfada, Cloud Firestore içindeki belgelerin, belge adlarının, alanların ve dizin girişlerinin depolama boyutu açıklanmaktadır.
Bu depolama alanının maliyetleri hakkında Cloud Firestore Fiyatlandırma bölümünden bilgi edinebilirsiniz.Dize boyutu
Dize boyutları, UTF-8 ile kodlanmış bayt sayısı + 1 olarak hesaplanır.
Aşağıdakiler dize olarak saklanır:
- Koleksiyon kimlikleri
- Dize doküman kimlikleri
- Doküman adları
- Alan adları
- Dize alanı değerleri
Örneğin:
- Koleksiyon kimliği
tasks, 5 bayt + 1 bayt olmak üzere toplam 6 bayt kullanır. - Alan adı
description11 bayt + 1 bayt olmak üzere toplam 12 bayt kullanır.
Belge kimliği boyutu
Doküman kimliğinin boyutu, dize kimliği için dize boyutu veya tam sayı kimliği için 8 bayttır.
Belge adı boyutu
Belge adının boyutu, aşağıdakilerin toplamıdır:
- Belge yolundaki her koleksiyon kimliğinin ve belge kimliğinin boyutu
- 16 ek bayt
users/jeff/tasks alt koleksiyonundaki my_task_id dize belge kimliğine sahip bir belgenin belge adı boyutu 6 + 5 + 6 + 11 + 16 = 44 bayttır:
userskoleksiyon kimliği için 6 baytjeffdoküman kimliği için 5 bayttaskskoleksiyon kimliği için 6 baytmy_task_iddoküman kimliği için 11 bayt- 16 ek bayt
Alan değeri boyutu
Aşağıdaki tabloda, alan değerlerinin türe göre boyutu gösterilmektedir.
| Tür | Boyut |
|---|---|
| Dizi | Değerlerinin boyutlarının toplamı |
| Boole | 1 bayt |
| Bayt | Bayt uzunluğu |
| Tarih ve saat | 8 bayt |
| Kayan nokta sayısı | 8 bayt |
| Coğrafi nokta | 16 bayt |
| Tam sayı | 8 bayt |
| Harita | Haritanın boyutu, belge boyutu ile aynı şekilde hesaplanır. |
| Boş | 1 bayt |
| Referans | Belge adı boyutu |
| Metin dizesi | UTF-8 ile kodlanmış bayt sayısı + 1 |
| Vector | Boyut başına 8 bayt |
Örneğin, done adlı bir boole alanı 6 bayt kullanır:
donealan adı için 5 bayt- Boole değeri için 1 bayt
Belge boyutu
Bir belgenin boyutu, aşağıdakilerin toplamıdır:
- Belge adı boyutu
- Her alan adının dize boyutunun toplamı
- Her bir alan değerinin boyutunun toplamı
- 32 ek bayt
Bu örnek, users/jeff/tasks alt koleksiyonundaki my_task_id dize doküman kimliğine sahip bir doküman içindir:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
Alanların toplam boyutu 71 bayttır:
| Alan adı ve değeri | Bayt cinsinden alan boyutu |
|---|---|
"type": "Personal" |
Alan adı için 14 5 + alanın dize değeri için 9 |
"done": false |
Alan adı için 6 5 + alanın Boole değeri için 1 |
"priority": 1 |
Alan adı için 17 9 + alanın tam sayı değeri için 8 |
"description": "Learn Cloud Firestore" |
Alan adı için 34 12 + alanın dize değeri için 22 |
Bu nedenle, doküman boyutu 44 + 71 + 32 = 147 bayttır:
- Doküman adı için 44 bayt
- Alanlar için 71 bayt
- 32 ek bayt
Dizin girişi boyutu
Tek alanlı ve birleşik dizinlerde dizin girişi boyutları aşağıdaki gibi hesaplanır.
Tek alanlı dizin girişi boyutu
Tek alanlı dizin girişinin boyutu, dizinin bir koleksiyon veya koleksiyon grubuyla sınırlandırılıp sınırlandırılmadığına bağlıdır.
Koleksiyon kapsamı
Koleksiyon kapsamına sahip tek alanlı bir dizindeki girişin boyutu, aşağıdakilerin toplamıdır:
- Dizine eklenen belgenin belge adı boyutu
- Dizinlenen belgenin üst belgesinin belge adı boyutu
- Dizine eklenen alan adının dize boyutu
- Dizine eklenen alan değerinin boyutu
- 32 ek bayt
users/jeff/tasks alt koleksiyonundaki my_task_id dize belge kimliğine sahip bir belgeyi ele alalım:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
done alanını dizine ekleyen koleksiyon kapsamlı tek alanlı bir dizin için bu dizindeki girişin toplam boyutu 109 bayttır:
- Belge adı için 44 bayt
users/jeff/tasks/my_task_id - Üst dokümanın doküman adı için 27 bayt
users/jeff donealan adı için 5 bayt- Boole alanı değeri için 1 bayt
- 32 ek bayt
Koleksiyon grubu kapsamı
Koleksiyon grubu kapsamına sahip tek alanlı dizindeki bir girişin boyutu, aşağıdakilerin toplamıdır:
- Dizine eklenen belgenin belge adı boyutu
- Dizine eklenen alan adının dize boyutu
- Dizine eklenen alan değerinin boyutu
- 48 ek bayt
my_task_id dize belge kimliğine sahip users/jeff/tasks alt koleksiyonundaki bir belgeyi ele alalım:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
done alanını dizine ekleyen koleksiyon grubu kapsamlı tek alanlı bir dizin için bu dizindeki girişin toplam boyutu 98 bayttır:
- Belge adı için 44 bayt
users/jeff/tasks/my_task_id donealan adı için 5 bayt- Boole alanı değeri için 1 bayt
- 48 ek bayt
Bileşik dizin girişi boyutu
Bileşik dizindeki bir girişin boyutu, dizinin bir koleksiyon veya koleksiyon grubuyla sınırlandırılıp sınırlandırılmadığına bağlıdır.
Koleksiyon kapsamı
Koleksiyon kapsamlı bir bileşik dizindeki dizin girişinin boyutu, aşağıdakilerin toplamıdır:
- Dizine eklenen belgenin belge adı boyutu
- Dizinlenen belgenin üst belgesinin belge adı boyutu
- Dizinlenmiş alan değerlerinin toplamı
- 32 ek bayt
users/jeff/tasks alt koleksiyonundaki my_task_id dize belge kimliğine sahip bir belgeyi ele alalım:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
done ve priority alanlarını (her ikisi de artan sırada) dizine ekleyen koleksiyon kapsamlı bir bileşik dizin için bu dizindeki girişin toplam boyutu 112 bayttır:
- Belge adı için 44 bayt
users/jeff/tasks/my_task_id - Üst dokümanın doküman adı için 27 bayt
users/jeff - Boole alanı değeri için 1 bayt
- Tam sayı alan değeri için 8 bayt
- 32 ek bayt
Koleksiyon grubu kapsamı
Koleksiyon grubu kapsamına sahip bir bileşik dizindeki dizin girişinin boyutu, aşağıdakilerin toplamıdır:
- Dizine eklenen belgenin belge adı boyutu
- Dizinlenmiş alan değerlerinin toplamı
- 32 ek bayt
users/jeff/tasks alt koleksiyonundaki my_task_id dize belge kimliğine sahip bir belgeyi ele alalım:
- "type": "Personal" - "done": false - "priority": 1 - "description": "Learn Cloud Firestore"
done ve priority alanlarını (her ikisi de artan sırada) dizine ekleyen koleksiyon grubu kapsamlı bir bileşik dizin için bu dizindeki dizin girişinin toplam boyutu 85 bayttır:
- Belge adı için 44 bayt
users/jeff/tasks/my_task_id - Boole alanı değeri için 1 bayt
- Tam sayı alan değeri için 8 bayt
- 32 ek bayt
Metin arama dizini girişi boyutu
Bir dizindeki metin arama dizini girişinin boyutu, aşağıdakilerin toplamıdır:
- Koleksiyon adının dize boyutu
- Belge kimliği değerinin boyutu
- Dizine eklenen alan değerlerinden gelen baytların toplamı (x2)
- Genel meta veriler için 48 ek bayt
my_task_id koleksiyonundaki tasks belge kimliğine sahip bir doküman için ekleme etkinliği örneğini inceleyin:
description üzerindeki bir metin arama dizini girişinin toplam boyutu, aşağıdakilere göre 105 bayttır:
- Koleksiyon adı için 6 bayt
tasks - Doküman kimliği değeri için 11 bayt
descriptionalanı için 22 bayt x 2 = 44 bayt- Genel meta veriler için 48 ek bayt
Coğrafi dizin girişi boyutu
Bir dizindeki coğrafi dizin girişinin boyutu, aşağıdakilerin toplamıdır:
- Koleksiyon adının dize boyutu
- Belge kimliği değerinin boyutu
- Dizine eklenen her coğrafi nokta için 128 bayt
- Genel meta veriler için 48 ek bayt
my_place koleksiyonundaki places belge kimliğine sahip bir doküman için ekleme etkinliği örneğini inceleyin:
{ "type": "Restaurant", "visited": false, "priority": 1, "location": GeoPoint(longitude, latitude) }
location üzerindeki bir coğrafi dizin girişinin toplam boyutu, aşağıdakilere göre 192 bayttır:
- Koleksiyon adı için 7 bayt
places - Doküman kimliği için 9 bayt
locationalanı için 128 bayt- Genel meta veriler için 48 ek bayt