Depolama alanı boyutu hesaplamaları

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

Bu depolama alanının maliyetleri hakkında bilgi edinmek için Cloud FirestoreFiyatlandırma başlıklı makaleyi inceleyin.

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:

  • tasks koleksiyon kimliği, 5 bayt + 1 bayt olmak üzere toplam 6 bayt kullanır.
  • description alan adı 11 bayt + 1 bayt, yani toplam 12 bayt kullanır.

Belge kimliği boyutu

Belge 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:

  • Belgenin yolundaki her koleksiyon kimliğinin ve belge kimliğinin boyutu
  • 16 ek bayt

users/jeff/tasks alt koleksiyonunda 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 doküman kimliği için 5 bayt
  • tasks koleksiyon kimliği için 6 bayt
  • my_task_id doküman kimliği için 11 bayt
  • 16 ek bayt

Alan değeri boyutu

Aşağıdaki tabloda, alan değerlerinin türüne 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
Tamsayı 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

Ö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

Belgenin boyutu aşağıdakilerden hangisidir?

Bu örnek, my_task_id dize doküman kimliğine sahip users/jeff/tasks alt koleksiyonundaki 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" 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 tam sayı değeri için 8
"description": "Learn Cloud Firestore" 34
Alan adı için 12 + alanın dize değeri için 22

Dolayısıyla doküman boyutu 44 + 71 + 32 = 147 bayttır:

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

Dizin girişi boyutu

Dizin girişi boyutları, tek alan ve birleşik dizinler için aşağıdaki gibi hesaplanır.

Tek alanlı dizin girişi 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 girişin boyutu aşağıdakilerin toplamıdır:

users/jeff/tasks alt koleksiyonunda my_task_id dize belge kimliğine sahip bir doküman olduğunu varsayalım:

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

done alanını dizine ekleyen koleksiyon kapsamlı bir tek alanlı 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 belgenin belge adı için 27 bayt users/jeff
  • done alan 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ı bir dizindeki girişin boyutu şunun toplamıdır:

users/jeff/tasks alt koleksiyonundaki, my_task_id dize belgesi kimliğine sahip bir dokümanı düşünün:

 - "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
  • done alan adı için 5 bayt
  • Boole alan değeri için 1 bayt
  • 48 ek bayt

Birleşik dizin girişi boyutu

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

Koleksiyon kapsamı

Koleksiyon kapsamlı bir bileşik dizindeki dizin girişinin boyutu aşağıdakilerin toplamıdır:

users/jeff/tasks alt koleksiyonunda my_task_id dize belge kimliğine sahip bir doküman olduğunu varsayalım:

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

done ve priority alanlarını (her ikisi de artan düzende) 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 belge adı users/jeff için 27 bayt
  • 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 bileşik bir dizindeki bir dizin girişinin boyutu şunların toplamıdır:

users/jeff/tasks alt koleksiyonunda my_task_id dize belge kimliğine sahip bir doküman olduğunu varsayalım:

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

done ve priority alanlarını (her ikisi de artan düzende) 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

Sırada ne var?

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