Desteklenen veri türleri

Bu sayfada, Cloud Firestore'ün desteklediği veri türleri açıklanmaktadır.

Veri türleri

Aşağıdaki tabloda Cloud Firestore tarafından desteklenen veri türleri listelenmiştir. Aynı türdeki değerler karşılaştırılırken kullanılan sıralama düzeni de açıklanır:

Veri türü Sıralama şekli Notlar
Dizi Öğe değerlerine göre

Bir dizi, öğelerinden biri olarak başka bir dizi değeri içeremez.

Dizideki öğeler, kendilerine atanan konumu korur. İki veya daha fazla dizi sıralanırken diziler öğe değerlerine göre sıralanır.

İki dizi karşılaştırılırken her bir dizinin ilk öğeleri karşılaştırılır. İlk öğeler eşitse ikinci öğeler karşılaştırılır ve bir fark bulunana kadar bu işlem devam eder. Bir dizideki karşılaştırılacak öğelerin sayısı sona erer ancak dizi o noktaya kadar eşitse daha kısa dizi daha uzun diziden önce sıralanır.

Örneğin, [1, 2, 3] < [1, 2, 3, 1] < [2]. [2] dizisi en yüksek ilk öğe değerine sahiptir. [1, 2, 3] dizisi, [1, 2, 3, 1] dizisinin ilk üç öğesine eşit elemanlara sahip ancak uzunlukları daha kısa.

Boole false < true
Bayt Bayt sırası En fazla 1.048.487 bayt (1 MiB - 89 bayt). Sorgular yalnızca ilk 1.500 baytı dikkate alır.
Tarih ve saat Kronolojik Cloud Firestore içinde depolandığında yalnızca mikrosaniye cinsinden kesindir; ek hassasiyetler aşağı yuvarlanır.
Kayan nokta sayısı Sayısal 64 bit çift duyarlıklılık, IEEE 754.
Coğrafi nokta Enleme ve ardından boylama göre Sorgulama sınırlamaları nedeniyle şu anda bu veri türünü kullanmanızı önermiyoruz. Enlem ve boylamı ayrı sayısal alanlar olarak depolamak genellikle daha iyidir. Uygulamanız mesafeye dayalı basit coğrafi sorgulara ihtiyaç duyuyorsa Coğrafi sorgular konusuna bakın
Tamsayı Sayısal 64 bit, imzalı
Harita Anahtarlara ve ardından değere göre

Bir dokümana yerleştirilmiş nesneyi temsil eder. Dizine eklendiğinde alt alanlarla ilgili sorgu yapabilirsiniz. Bu değeri dizine ekleme işleminden hariç tutarsanız tüm alt alanlar da dizine ekleme işleminden hariç tutulur.

Anahtar sıralaması her zaman sıralanır. Örneğin, {c: "foo", a: "bar", b: "qux"} yazarsanız harita anahtara göre sıralanır ve {a: "bar", b: "qux", c: "foo"} olarak kaydedilir.

Eşleme alanları anahtara göre sıralanır ve önce anahtarlar, ardından değerler karşılaştırılarak anahtar/değer çiftlerine göre karşılaştırılır. İlk anahtar/değer çiftleri eşitse sonraki anahtar/değer çiftleri karşılaştırılır ve bu şekilde devam eder. İki haritanın anahtar/değer çiftlerinin tümü aynıysa harita uzunluğu dikkate alınır. Örneğin, aşağıdaki haritalar artan düzendedir:

{a: "aaa", b: "baz"}
{a: "foo", b: "bar"}
{a: "foo", b: "bar", c: "qux"}
{a: "foo", b: "baz"}
{b: "aaa", c: "baz"}
{c: "aaa"}

NaN Yok
Boş Yok
Referans Yol öğelerine göre (koleksiyon, belge kimliği, koleksiyon, belge kimliği...) Örneğin, projects/[PROJECT_ID]/databases/[DATABASE_ID]/documents/[DOCUMENT_PATH].
Metin dizesi UTF-8 ile kodlanmış bayt sırası En fazla 1.048.487 bayt (1 MiB - 89 bayt). Sorgular yalnızca UTF-8 gösteriminin ilk 1.500 baytını dikkate alır.
Vector Boyuta ve ardından tek tek öğe değerlerine göre Desteklenen maksimum yerleştirme boyutu 2048'dir. Daha büyük boyutlara sahip vektörleri depolamak için boyut azaltma özelliğini kullanın.

Değer türü sıralaması

Bir sorgu, karma türlerde değerler içeren bir alan içeriyorsa Cloud Firestore, dahili temsillere dayalı bir deterministik sıralama kullanır. Aşağıdaki listede sıra gösterilmektedir:

  1. Boş değerler
  2. Boole değerleri
  3. NaN değerleri
  4. Sayısal sıraya göre sıralanmış tam sayı ve kayan nokta değerleri
  5. Tarih değerleri
  6. Metin dizesi değerleri
  7. Bayt değerleri
  8. Cloud Firestore referans
  9. Coğrafi nokta değerleri
  10. Dizi değerleri
  11. Vektör yerleştirmeleri
  12. Değerleri eşleme