Bir veritabanı seçin: Cloud Firestore veya Realtime Database

Firebase; bulut tabanlı ve istemci tarafından erişilebilen iki belge veritabanı sunar. Biz yeni müşterilerin Cloud Firestore ile başlamasını önerin:

  • Cloud Firestore, kurumsal düzeyde JSON ile uyumlu olan önerilen uygulamadır 250.000'den fazla geliştiricinin güvendiği belge veritabanı. Uygun olduğu durumlar: sorgulanabilirlik, ölçeklenebilirlik ve ölçeklenebilirlik gerektiren zengin veri modellerine yüksek kullanılabilirlik. Ayrıca düşük gecikmeli istemci senkronizasyonu ve çevrimdışı veri erişimi.

  • Realtime Database, klasik Firebase JSON veritabanıdır. Uygun olduğu durumlar: basit arama ve düşük gecikme gerektiren basit veri modellerine sahip uygulamalar senkronizasyon olanağı sunar.

Dikkate alınması gereken diğer önemli noktalar nelerdir?

Önceki temel hususları düşündükten sonra, bir projeyi yürütmek için bir veritabanı seçin. Avantaj ve dezavantajları karşılaştırıyorsanız bu bölümde Cloud Firestore ve Realtime Database arasındaki farklar.

Veri modeli

Hem Realtime Database hem de Cloud Firestore, NoSQL Veritabanlarıdır.

Cloud Firestore Tercih Edilen Realtime Database
Verileri, doküman koleksiyonları olarak depolar.
  • Basit veriler, JSON'a çok benzeyen dokümanlarda kolayca saklanabilir.
  • Karmaşık, hiyerarşik verilerin geniş ölçekte organize edilmesi kolay olduğundan alt koleksiyon eklemelerine olanak tanır.
  • Daha az normalleştirme ve veri birleştirme gerektirir.

Şu konu hakkında daha fazla bilgi edinin: Cloud Firestore veri modeli.

Verileri büyük bir JSON ağacı olarak depolar.
  • Basit verileri saklamak çok kolaydır.
  • Karmaşık, hiyerarşik verilerin geniş ölçekte organize edilmesi daha zordur.

Şu konu hakkında daha fazla bilgi edinin: Gerçek Zamanlı Veritabanı veri modeli.

Gerçek zamanlı ve çevrimdışı destek

Her ikisi de mobil öncelikli, gerçek zamanlı SDK'lara sahiptir ve veriler için yerel veri depolamayı destekler. hazır uygulamalar sunar.

Cloud Firestore Tercih Edilen Realtime Database
Apple, Android ve web istemcileri için çevrimdışı destek. Apple ve Android istemcileri için çevrimdışı destek.

Varlık

Bir müşterinin ne zaman çevrimiçi veya çevrimdışı olduğunu bilmek yararlı olabilir. Firebase Realtime Database, istemci bağlantı durumunu kaydedip güncelleme sağlayabilir istemcinin bağlantı durumu her değiştiğinde.

Cloud Firestore Tercih Edilen Realtime Database
Yerel olarak desteklenmez. Temel bilgileri kullanarak Realtime Database'in Cloud Firestore ve Realtime Database'i aşağıdakileri kullanarak senkronize ederek varlık desteği Cloud Functions Bkz. Derleme daha fazla bilgi edinin. Bulunma dayalı değil.

Sorgulanıyor

Sorgular aracılığıyla her iki veritabanından da veri alma, sıralama ve filtreleme.

Cloud Firestore Tercih Edilen Realtime Database
Bileşik içeren dizine eklenmiş sorgular sıralama ve filtreleme.
  • Mülkte filtre zinciri oluşturabilir, filtreleme ve sıralamayı ekleyebilirsiniz.
  • Sorgular sığdır; yalnızca belirli bir koleksiyondaki dokümanları döndürürler veya koleksiyon verilerini döndürmeyin.
  • Sorgular her zaman tüm dokümanları döndürmelidir.
  • Sorgular varsayılan olarak dizine eklenir: Sorgu performansı veri kümenizin değil, sonuç kümenizin boyutudur.
Sınırlı olan derin sorgular sıralama ve filtreleme özelliklerini kullanın.
  • Sorgular bir mülkte sıralanabilir veya filtre uygulayabilir, ancak ikisini birden düzenleyemez.
  • Sorgular varsayılan olarak derindir: Her zaman alt ağacın tamamını döndürürler.
  • Sorgular, JSON ağacındaki bağımsız yaprak düğümü değerlerine kadar herhangi bir ayrıntı düzeyinde verilere erişebilir.
  • Sorgular dizin gerektirmez; belirli sorguların performansı veri kümeniz büyüdükçe bozulur.

Yazmalar ve işlemler

Cloud Firestore Tercih Edilen Realtime Database
Gelişmiş yazma ve işlem işlemleri.
  • Veri işlemleri yazma yapılandırma ve güncelleme işlemlerinin yanı sıra dizi ve sayısal operatörler.
  • İşlemler veri tabanının herhangi bir bölümünden veri okuma ve yazma becerisi sahibidir.
Temel yazma ve işlem işlemleri.
  • Veri yazma yükleme ve güncelleme işlemleri yapılır.
  • İşlemler belirli bir veri alt ağacında atomik olması gerekir.

Güvenilirlik ve performans

Cloud Firestore Tercih Edilen Realtime Database
Cloud Firestore, ölçeğini genişleten bölgesel ve çok bölgeli bir çözümdür. otomatik olarak eklenir.
  • Tipik yanıt sürelerinin en fazla 30 olduğu düşük gecikmeli bir çözüm ms.
  • Verilerinizi farklı bölgelerdeki birden fazla veri merkezinde barındırarak şunları sağlar: Küresel ölçeklenebilirlik ve güçlü güvenilirlik.
  • Dünya genelindeki bölgesel veya çok bölgeli yapılandırmalarda kullanılabilir.
ziyaret edin. Cloud Firestore performans ve güvenilirlik özellikleri hakkında daha fazla bilgi (Hizmet Düzeyi Sözleşmesi)
Realtime Database, bölgesel bir çözümdür.
  • Bölgesel yapılandırmalarda kullanılabilir. Veritabanları alt bölgesel ile sınırlıdır bir ekiple çalışıyor olabilirsiniz.
  • Normal yanıt sürelerinin 10 ms'den fazla olmadığı son derece düşük gecikme. için ideal bir seçenektir.
ziyaret edin. Realtime Database performansı ve güvenilirlik özellikleri hakkında daha fazla bilgi (Hizmet Düzeyi Sözleşmesi)

Çalışma süresi

Cloud Firestore Tercih Edilen Realtime Database
Son derece yüksek çalışma süresi performansı.
  • %99,999 oranında genel çalışma süresi performansı.
  • Kullanılabilirlik son derece önemliyse, örneğin e-ticaret uygulamalarında Cloud Firestore'u kullanabilirsiniz.
Yüksek çalışma süresi performansı.
  • %99,95 oranında genel çalışma süresi performansı.

Ölçeklenebilirlik

Cloud Firestore Tercih Edilen Realtime Database
Ölçeklendirme otomatiktir.
  • Tamamen otomatik olarak ölçeklendirilir. Ölçeklendirme sınırlarına yakın 1 milyon eşzamanlı bağlantı ve 10.000 yazma/saniye. Bütçeyi artırmayı ve koruyabilirsiniz.
  • Tek tek belge veya dizinlere yönelik yazma hızları açısından sınırlar vardır.
Ölçeklendirme için parçalama gerekir.
  • Şurada yaklaşık 200.000 eşzamanlı bağlantı ve 1.000 yazma/saniye hızına göre ölçeklendirme e-tablolarda tutabilirsiniz. Bunun ötesinde ölçeklendirme için verilerinizin parçalara ayrılması gerekir birden çok veritabanı oluşturabilirsiniz.
  • Ayrı veri parçalarına yazma hızlarıyla ilgili yerel sınırlar uygulanmaz.

Güvenlik

Cloud Firestore Tercih Edilen Realtime Database
Yetkilendirme ve doğrulamayı birleştiren, geçişli olmayan kurallar.
  • Güvenliği sağlayan mobil SDK'lardan okuma ve yazma Cloud Firestore Güvenlik Kuralları.
  • Güvenliği sağlayan sunucu SDK'larından okuma ve yazma Identity and Access Management (IAM).
  • Joker karakter kullanmadığınız sürece kurallar basamaklamaz.
  • Kurallar sorguları kısıtlayabilir: Sorgu sonuçları veri içeriyorsa kullanıcının erişimi yoktur. Sorgunun tamamı başarısız olur.
Yetkilendirme ile doğrulamayı ayıran geçişli kural dili.

Fiyatlandırma

Her iki çözüm de Spark and Blaze fiyatlandırma planları.

Cloud Firestore Tercih Edilen Realtime Database
Temel olarak, veritabanınızda gerçekleştirilen işlemler için alınan ödemeler (okuma, yazma, silme) ve daha düşük hızda bant genişliği ve depolama alanı sunar.

Cloud Firestore, her gün destekler harcama sınırları ve ekstra maliyetlerle karşılaşmanızı önleyerek rahat hissetmelerine yardımcı olur.

Daha fazla bilgi: Cloud Firestore fiyatlandırma planları.

Yalnızca bant genişliği ve depolama alanı için ücret alınır, ancak daha yüksek bir fiyattan ücretlendirilir oranıdır.

Realtime Database fiyatlandırma planları hakkında daha fazla bilgi edinin.

Cloud Firestore ve Realtime Database'i Kullanma

Her iki veritabanını da aynı Firebase uygulaması veya projesinde kullanabilirsiniz. Her ikisi de NoSQL veritabanları aynı tür verileri depolayabilir ve istemci kitaplıkları, sağlayabilirsiniz. Akıllı Teklif'e karar verirseniz daha önce belirtilen uygulamanızda her iki veritabanını da kullanmanıza olanak tanır.

Her iki Realtime Database'de kullanılabilen özellikler hakkında daha fazla bilgi ve Cloud Firestore'da kullanılabilir.

Veritabanı seçmeye hazır mısınız?

Bu karşılaştırmanın bir Firebase veritabanı çözümünde karar kılmanıza yardımcı olduğunu umuyorum. Artık Firebase projelerinize veritabanı eklemeyi öğrenebilirsiniz.