Firebase, bulut tabanlı ve istemci tarafından erişilebilen iki belge veritabanı sunar. Yeni müşterilerin Cloud Firestore ile başlamasını öneririz:
Cloud Firestore, 600.000'den fazla geliştiricinin güvendiği,önerilen kurumsal sınıf JSON uyumlu belge veritabanıdır. Sorgulanabilirlik, ölçeklenebilirlik ve yüksek kullanılabilirlik gerektiren zengin veri modellerine sahip uygulamalar için uygundur. Ayrıca düşük gecikmeli istemci senkronizasyonu ve çevrimdışı veri erişimi sunar.
Realtime Database, klasik Firebase JSON veritabanıdır. Basit aramalar ve sınırlı ölçeklenebilirlikle düşük gecikmeli senkronizasyon gerektiren basit veri modellerine sahip uygulamalar için uygundur.
Dikkate alınması gereken diğer önemli noktalar nelerdir?
Önceki önemli noktaları değerlendirdikten sonra veritabanı seçmeye hazır olabilirsiniz. Avantajları ve dezavantajları değerlendirmeye devam ediyorsanız bu bölümde Cloud Firestore ve Realtime Database arasındaki diğer farklar ele alınmaktadır.
Veri modeli
Hem Realtime Database hem de Cloud Firestore NoSQL veritabanlarıdır.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
Verileri doküman koleksiyonları olarak depolar.
Cloud Firestore veri modeli hakkında daha fazla bilgi edinin. |
Verileri büyük bir JSON ağacı olarak depolar.
Realtime Database veri modeli hakkında daha fazla bilgi edinin. |
|
Gerçek zamanlı ve çevrimdışı destek
Her ikisinde de mobil öncelikli, gerçek zamanlı SDK'lar bulunur ve her ikisi de çevrimdışı kullanıma hazır uygulamalar için yerel veri depolamayı destekler.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
| Apple, Android ve web istemcileri için çevrimdışı destek. | Apple ve Android istemcileri için çevrimdışı destek. | |
Varlık
Bir istemcinin ne zaman çevrimiçi veya çevrimdışı olduğunu bilmek faydalı olabilir. Firebase Realtime Database, istemci bağlantı durumunu kaydedebilir ve istemcinin bağlantı durumu her değiştiğinde güncellemeler sağlayabilir.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
| Doğal olarak desteklenmez. Cloud Functions kullanarak Cloud Firestore ve Realtime Database senkronizasyonuyla Realtime Database'ın iletişim durumu desteğini geliştirebilirsiniz. Cloud Firestore'da iletişim durumu oluşturma başlıklı makaleyi inceleyin. | Varlık desteklenir. | |
Sorgulama
Sorgular aracılığıyla her iki veritabanından veri alma, sıralama ve filtreleme
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
Bileşik sıralama ve filtreleme içeren dizine eklenmiş sorgular.
|
Sınırlı sıralama ve filtreleme özellikleriyle derin sorgular.
|
|
Yazmalar ve işlemler
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
Gelişmiş yazma ve işlem operasyonları
|
Temel yazma ve işlem operasyonları
|
|
Güvenilirlik ve performans
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
Cloud Firestore, otomatik olarak ölçeklenen bölgesel ve çok bölgeli bir çözümdür.
|
Realtime Database, bölgesel bir çözümdür.
|
|
Çalışma süresi
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
Son derece yüksek çalışma süresi performansı.
|
Yüksek çalışma süresi performansı.
|
|
Ölçeklenebilirlik
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
Ölçeklendirme otomatiktir.
|
Ölçeklendirme için parçalama gerekir.
|
|
Güvenlik
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
Yetkilendirme ve doğrulamayı birleştiren basamaklı olmayan kurallar.
|
Yetkilendirme ve doğrulamayı ayıran basamaklı kural dili.
|
|
Fiyatlandırma
Her iki çözüm de Spark ve Blaze fiyatlandırma planlarında kullanılabilir.
| Cloud Firestore | [ PREFERRED ] | Realtime Database |
|---|---|---|
| Ücretler öncelikle veritabanınızda gerçekleştirilen işlemlere (okuma, yazma, silme) ve daha düşük bir oranda bant genişliği ile depolama alanına göre belirlenir.
Cloud Firestore, rahatça harcayabileceğinizden daha fazla harcama yapmamanız için aylık bütçeleri ve uyarıları destekler. Cloud Firestore fiyatlandırma planları hakkında daha fazla bilgi edinin. |
Yalnızca bant genişliği ve depolama alanı için ücret alınır ancak ücret daha yüksektir.
Realtime Database fiyatlandırma planları hakkında daha fazla bilgi edinin. |
|
Hem Cloud Firestore hem de Realtime Database kullanın
Her iki veritabanını da aynı Firebase uygulamasında veya projesinde kullanabilirsiniz. Her iki NoSQL veritabanı da aynı veri türlerini depolayabilir ve istemci kitaplıkları benzer şekilde çalışır. Uygulamanızda her iki veritabanını da kullanmaya karar verirseniz daha önce açıklanan farklılıkları göz önünde bulundurun.
Hem Realtime Database hem de Cloud Firestore'da kullanılabilen özellikler hakkında daha fazla bilgi edinin.
Veritabanı seçmeye hazır mısınız?
Bu karşılaştırmanın, Firebase veritabanı çözümüne karar vermenize yardımcı olduğunu umuyoruz. Artık Firebase projelerinize nasıl veritabanı ekleyeceğinizi öğrenebilirsiniz.
- Cloud Firestore için Cloud Firestore'u kullanmaya başlama başlıklı makaleyi inceleyin.
- Realtime Database için platformunuzla ilgili Başlangıç konusunu okuyun: Apple, Android, C++, Unity, Web veya REST.