Depolama boyutu hesaplamaları

Bu sayfada Cloud Firestore'daki belgelerin, belge adlarının, alanların ve dizin girişlerinin depolama boyutu açıklanmaktadır.

Bu depolamanın maliyetleri hakkında Cloud Firestore Fiyatlandırması'ndan bilgi edinebilirsiniz.

Dize boyutu

Dize boyutları, UTF-8 kodlu bayt sayısı + 1 olarak hesaplanır.

Aşağıdakiler dize olarak saklanır:

  • Koleksiyon kimlikleri
  • Dize belge kimlikleri
  • Belge adları
  • Alan adları
  • Dize alanı değerleri

Örneğin:

  • Koleksiyon kimliği tasks toplam 6 bayt olmak üzere 5 bayt + 1 bayt kullanır.
  • Alan adı description toplam 12 bayt olmak üzere 11 bayt + 1 bayt kullanılır.

Belge Kimliği boyutu

Belge kimliğinin boyutu, dize kimliği için dize boyutu veya tamsayı kimliği için 8 bayttır.

Belge adı boyutu

Bir 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 belge için belge adı boyutu 6 + 5 + 6 + 11 + 16 = 44 bayttır:

  • users koleksiyon kimliği için 6 bayt
  • jeff belge kimliği için 5 bayt
  • tasks koleksiyonu kimliği için 6 bayt
  • my_task_id belge kimliği için 11 bayt
  • 16 ek bayt

Alan değeri boyutu

Aşağıdaki tabloda türe göre alan değerlerinin boyutu gösterilmektedir.

Tip Boyut
Sıralamak Değerlerinin boyutlarının toplamı
Boolean 1 bayt
Bayt Bayt uzunluğu
Tarih ve saat 8 bayt
Kayan nokta sayısı 8 bayt
Coğrafi nokta 16 bayt
Tamsayı 8 bayt
Harita Belge boyutuyla aynı şekilde hesaplanan haritanın boyutu
Hükümsüz 1 bayt
Referans Belge adı boyutu
Metin dizesi UTF-8 kodlu bayt sayısı + 1

Örneğin, done adlı bir boole alanı 6 bayt kullanır:

  • done alan adı için 5 bayt
  • Boole değeri için 1 bayt

Belge boyutu

Bir belgenin boyutu aşağıdakilerin toplamıdır:

Bu örnek, my_task_id dize belge kimliğine sahip, users/jeff/tasks alt koleksiyonundaki bir belge 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" 14
Alan adı için 5 + alanın dize değeri için 9
"done": false 6
Alan adı için 5 + alanın boole değeri için 1
"priority": 1 17
Alan adı için 9 + alanın tamsayı değeri için 8
"description": "Learn Cloud Firestore" 34
Alan adı için 12 + alanın dize değeri için 22

Yani belge boyutu 44 + 71 + 32 = 147 bayttır:

  • Belge adı için 44 bayt
  • Alanlar için 71 bayt
  • 32 ek bayt

Dizin giriş boyutu

Tek alanlı ve bileşik indeksler için indeks giriş boyutları aşağıdaki şekilde hesaplanır.

Tek alanlı dizin giriş boyutu

Tek alanlı dizin girişinin boyutu, dizinin kapsamının bir koleksiyona mı yoksa koleksiyon grubuna mı ait olduğuna bağlıdır.

Koleksiyon kapsamı

Koleksiyon kapsamına sahip tek alanlı bir dizindeki bir girişin boyutu şunun toplamıdır:

users/jeff/tasks alt koleksiyonunda my_task_id dize belge kimliğine sahip bir belge düşünün:

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

done alanı dizine ekleyen koleksiyon kapsamına sahip tek alanlı bir dizin için, bu dizindeki girdinin toplam boyutu 109 bayttır:

  • users/jeff/tasks/my_task_id belge adı için 44 bayt
  • Ana belgenin belge adı users/jeff için 27 bayt
  • done alan adı için 5 bayt
  • Boolean alan değeri için 1 bayt
  • 32 ek bayt

Koleksiyon grubu kapsamı

Koleksiyon grubu kapsamına sahip tek alanlı bir dizindeki bir girişin boyutu şunun toplamıdır:

users/jeff/tasks alt koleksiyonunda my_task_id dize belge kimliğine sahip bir belge düşünün:

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

done alanı dizine ekleyen koleksiyon grubu kapsamına sahip tek alanlı bir dizin için, bu dizindeki girişin toplam boyutu 98 bayttır:

  • users/jeff/tasks/my_task_id belge adı için 44 bayt
  • done alan adı için 5 bayt
  • Boolean alan değeri için 1 bayt
  • 48 ek bayt

Bileşik dizin giriş boyutu

Bileşik dizindeki bir girdinin boyutu, dizinin kapsamının bir koleksiyona mı yoksa koleksiyon grubuna mı ait olduğuna bağlıdır.

Koleksiyon kapsamı

Koleksiyon kapsamına sahip bir bileşik dizindeki dizin girişinin boyutu şunun toplamıdır:

users/jeff/tasks alt koleksiyonunda my_task_id dize belge kimliğine sahip bir belge düşünün:

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

done ve priority alanlarını (her ikisi de artan) indeksleyen koleksiyon kapsamına sahip bir bileşik indeks için, bu indeksteki girişin toplam boyutu 112 bayttır:

  • users/jeff/tasks/my_task_id belge adı için 44 bayt
  • Ana belgenin belge adı users/jeff için 27 bayt
  • Boolean 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 şunun toplamıdır:

users/jeff/tasks alt koleksiyonunda my_task_id dize belge kimliğine sahip bir belge düşünün:

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

done ve priority alanlarını (her ikisi de artan) indeksleyen koleksiyon grubu kapsamına sahip bir bileşik indeks için, bu indeksteki indeks girişinin toplam boyutu 85 bayttır:

  • users/jeff/tasks/my_task_id belge adı için 44 bayt
  • Boolean alan değeri için 1 bayt
  • Tam sayı alanı değeri için 8 bayt
  • 32 ek bayt

Sıradaki ne

Cloud Firestore fiyatlandırması hakkında bilgi edinin.