Cloud Firestore ölçmek için temel sohbet uygulaması örneğini kullanın ve maliyetleri görebilirsiniz. Bu kesin bir tahmin değildir ancak daha iyi yardımcı olabilir. Cloud Firestore kullanımınızın nasıl faturalandırıldığını daha iyi anlayın.
Genel Bakış: Kullanım düzeyine göre maliyetler
Olağan maliyetleri açıklamak için kullanıcıların belirli bir
İki veya daha fazla katılımcıyla sohbet başlatma. Kullanıcılar, etkin durumdaki
gönderebilir, mesajları okuyabilir ve mesaj gönderebilirsiniz. Bu örnekte
Kuzey Amerika çoklu bölgesi (özellikle nam5
) için fiyatlandırma kullanılarak.
Varsayımlar
Kullanım ve veri depolamayla ilgili aşağıdaki varsayımları göz önünde bulundurun:
- Günlük Etkin Kullanıcı Sayısı (GEKS), toplam uygulama yükleme sayısının% 10'unu oluşturur. Şunları yapabilirsiniz: Günlük etkin kullanıcı sayınıza dair kaba bir tahmin kullanarak günlük maliyetlerinizi tahmin etme (GEKS). Bunlar, uygulamanızı belirli bir zamanda aktif olarak açıp kullanan Bu genellikle toplam uygulamanızın küçük bir alt kümesidir yükleme sayısını artırır. Aşağıdaki hesaplamalar için GEKS'nin, ortalama günlük bütçenizin% 10'u olarak Toplam uygulama yükleme sayısı.
- Belge boyutları nispeten küçüktür. Aşağıdaki tabloya bakın. dökümanlarını inceleyin.
- Veriler yalnızca üç ay boyunca saklanır. Örnek sohbetteki mesajlar yalnızca üç ay saklanır. Silme işlemini hesaba katmak için işlemleri için aşağıdaki hesaplamalar, her günlük yazma işlemi için bir günlük silme işlemini göstermektedir.
- Bu maliyet tahminleri, örnek uygulamanın maliyetlerinin çoğunu yansıtsa da hepsine sahip olacak. Bir uygulamanın maliyetlerinin çoğunu işlemler, kullanıcı ve mesaj depolama ile çıkış ile en sık etkileşime geçen kullanıcı için bu kılavuzda özetlenen görevlere göz atın. Ancak her bir özelliğin, Uygulamanızın yapısına ve veri ihtiyaçlarına bağlı olarak ek maliyetler. Bunu kullan örnek olarak kullanabilirsiniz. Ancak daha fazla bilgi için fiyatlandırma sayfasına sayfasına bakın.Cloud Firestore
İşlemlerin kullanıcı görevine göre dökümü için Döküm: Kullanıcı görevine göre faturalandırılan kullanım bölümü.
Küçük
(50 bin yükleme)
50.000 uygulama yüklemesi (5.000 Günlük Etkin Kullanıcı) için: Ayda 12,14 ABD doları
Okuma/Yazma Maliyetleri | |||||
---|---|---|---|---|---|
Toplam aylık maliyet = Ayda 11,10 ABD doları | |||||
Günlük toplam 400 bin okuma | = | 50 bin ücretsiz okuma + (100.000 yazma başına 0,06 ABD dolarından 350 bin okuma) | = | 3,5 * 0,06 ABD doları | |
0,21 TL / gün * 30 = 6,30 TL | |||||
Günlük toplam 100 bin yazma | = | 20 bin ücretsiz yazma + (0,18 ABD doları/100.000 ABD doları ile 80.000 yazma) | = | 0,8 * 0,18 ABD doları | |
0,14 TL / gün * 30 = 4,20 TL | |||||
Günlük toplam 100 bin silme | = | 20 bin ücretsiz silme + (0,02/100 bin ABD dolarından 80.000 silme) | = | 0,8 * 0,02 ABD doları | |
0,02 ABD doları / gün * 30 = 0,60 ABD doları |
Depolama/Ağ iletişimi Maliyetleri | |||||||
---|---|---|---|---|---|---|---|
Toplam aylık maliyet = 1,04 ABD doları/ay | |||||||
20 KB / günlük çıkış için GEKS x 5.000 GEKS | = | Günlük 100 MB çıkış * 30 | = | 3 GB aylık ağ çıkışı | |||
3 GB Ücretsiz çıkış = Ücretsiz1 | |||||||
15 KB günlük mesaj depolama alanı / GEKS + 3 KB depolama alanı / yükleme2 | = | 45 KB depolama alanı / GEKS * 5.000 GEKS | = | 225 MB günlük depolama alanı / GEKS * 30 | = | 6,75 GB aylık depolama alanı kullanımı | |
1 GB Ücretsiz depolama alanı + (5,75 * 0,18 ABD doları) = 1,04 ABD doları / ay |
1 Aylık 10 GB'lık ağ çıkışı,
Cloud Firestore.
2 GEKS'nin toplam uygulamanın% 10'u olduğunu varsayıyoruz
bu
uygulamanızı yükleyen toplam kullanıcı sayısını ifade eder.
Orta
(1 milyon yükleme)
1.000.000 uygulama yüklemesi (100.000 Günlük Etkin Kullanıcı) için: Ayda 292,02 ABD doları
Okuma/Yazma Maliyetleri | |||||
---|---|---|---|---|---|
Toplam aylık maliyet = ayda 261,90 ABD doları | |||||
Toplam günlük 8 milyon okuma | = | 50 bin ücretsiz okuma + (100.000 ABD dolarından 0,06 ABD dolarından 7,95 milyon okuma) | = | 79,5 * 0,06 ABD doları | |
4,77 TL / gün * 30 = 143,10 TL | |||||
Günlük toplam 2 milyon yazma | = | 20 bin ücretsiz yazma + (0,18 $/100.000'dan 1,98 milyon yazma) | = | 19,8 * 0,18 ABD doları | |
3,56 TL / gün * 30 = 106,80 TL | |||||
Günlük toplam 2 milyon silme işlemi | = | 20 bin ücretsiz silme + (0,02/100.000 ABD dolarından 1,98 milyon silme) | = | 19,8 * 0,02 ABD doları | |
0,40 TL / gün * 30 = 12 TL |
Depolama/Ağ iletişimi Maliyetleri | |||||||
---|---|---|---|---|---|---|---|
Toplam aylık maliyet = ayda 30,12 ABD doları | |||||||
20 KB / günlük çıkış için GEKS x 100.000 GEKS | = | 2 GB günlük çıkış * 30 | = | 60 GB aylık ağ çıkışı | |||
10 GB Ücretsiz çıkış + (50 GB çıkış * 0,12 ABD doları/GB) = 6,00 ABD doları / ay | |||||||
15 KB günlük mesaj depolama alanı / GEKS + 3 KB depolama alanı / yükleme1 | = | 45 KB depolama alanı / GEKS * 100.000 GEKS | = | 4,5 GB günlük depolama alanı / GEKS * 30 | = | 135 GB aylık depolama alanı kullanımı | |
1 GB Ücretsiz depolama alanı + (134 GB * 0,18 ABD doları/GB) = 24,12 ABD doları / ay |
1 GEKS'lerin toplam uygulama yüklemelerinin% 10'u olduğunu varsayıyoruz. Dolayısıyla bu oran, uygulamanızı yükleyen toplam kullanıcı sayısını ifade eder.
Büyük
(10 Mn yükleme)
10.000.000 uygulama yüklemesi (1.000.000 Günlük Etkin Kullanıcı) için: 2951,52 ABD doları
Okuma/Yazma Maliyetleri | |||||
---|---|---|---|---|---|
Toplam aylık maliyet = Toplam: Ayda 2637,90 ABD doları | |||||
Toplam günlük 80 milyon okuma | = | 50 bin ücretsiz okuma + (100.000 ABD dolarından 0,06 ABD dolarından 79,95 milyon okuma) | = | 799,5 * 0,06 ABD doları | |
47,97 TL / gün * 30 = 1439,10 TL | |||||
Günlük toplam 20 milyon yazma | = | 20 bin ücretsiz yazma + (100.000 başına 0,18 ABD dolarından 19,98 milyon yazma) | = | 199,8 * 0,18 ABD doları | |
35,96 TL / gün * 30 = 1078,80 TL | |||||
Günlük toplam 20 milyon silme işlemi | = | 20 bin ücretsiz silme + (0,02/100.000 ABD dolarından 19,98 milyon silme) | = | 199,8 * 0,02 ABD doları | |
4,00 TL / gün * 30 = 120,00 TL |
Depolama/Ağ iletişimi Maliyetleri | |||||||
---|---|---|---|---|---|---|---|
Toplam aylık maliyet = ayda 313,62 ABD doları | |||||||
20 KB / günlük çıkış için GEKS x 1 milyon GEKS | = | 20 GB günlük çıkış * 30 | = | Aylık 600 GB ağ çıkışı | |||
10 GB Ücretsiz çıkış + (590 GB çıkış * 0,12 ABD doları/GB) = ayda 70,80 ABD doları | |||||||
15 KB günlük mesaj depolama alanı / GEKS + 3 KB depolama alanı / yükleme1 | = | 45 KB depolama alanı / GEKS * 1 Mn GEKS | = | 45 GB günlük depolama alanı / GEKS * 30 | = | 1.350 GB aylık depolama alanı kullanımı | |
(1 GB Ücretsiz depolama alanı) + (1.349 GB * 0,18 ABD doları/GB) = Ayda 242,82 ABD doları |
1 GEKS'lerin toplam uygulama yüklemelerinin% 10'u olduğunu varsayıyoruz. Dolayısıyla bu oran, uygulamanızı yükleyen toplam kullanıcı sayısını ifade eder.
Cloud Firestore faturalandırma modelinin bir avantajı, yalnızca kullandığınız için ödeme yaparsınız. Bunun sonucunda da faturanız, müşteri hizmetleri GEKS sayısı.
Döküm: Kullanıcı görevine göre faturalandırılan kullanım
Örnek sohbet uygulamamızın veri yapısı aşağıdaki gibidir:
users/{userId}
— Kullanıcı kayıtlarıgroups/{groupId}
— 2 veya daha fazla kullanıcı arasındaki sohbetlermessages/{messageId}
— Sohbetteki her mesaj.
Veri depolama
Uygulama verilerini depolamayla ilgili depolama maliyetlerini hesaplamak için aşağıdakini uygulayın: varsayımlarda bulunmaktır:
Toplama | Belge Boyutu (taşıma sırasında) | Doküman Boyutu (disk üzerinde)* |
---|---|---|
kullanıcılar | 1KB | 3KB |
groups | 0,5 KB | 1,5 KB |
mesajlar | 0,25 KB | 0,75 KB |
*Bu boyut hesaplaması, mesaj alanları için dizinleri içerir ancak ileti içeriği için dizine eklemenin devre dışı bırakıldığını varsayar.
Uygulama ayrıca yalnızca üç aya kadar olan mesajları da saklar. depolama maliyetlerini düşürmenizi sağlıyor.
Depolama alanı maliyetlerini hesaplama hakkında daha fazla bilgi edinmek için Depolama alanı boyutu hesaplamalarını anlama.
İşlemler
Kullanıcılar uygulamada genellikle aşağıdaki genel görevleri tamamlar:
- Sohbetlerin listesini görme: Kullanıcılar uygulamanın ana ekranını açar ve sohbetlerin listesini (grup ve doğrudan) en güncel mesaj yayınlandı.
- Sohbetteki mesajları okuma: Kullanıcılar sohbetleri evden seçer ve sohbetlerdeki son mesajları okuyabilir.
- Sohbete mesaj gönderme: Kullanıcılar sohbetlere mesaj gönderir (grup halinde veya doğrudan).
Örnek uygulamanın üç için Cloud Firestore cinsinden toplam tahmini işlem sayısı tipik kullanıcı görevleri şunlardır:
- Okuma sayısı: (5 * 10) + (30) = 80 okuma / kullanıcı / gün
- Yazma sayısı: (10 * 2) = 20 yazma sayısı / kullanıcı / gün
- Ağ Çıkışı: (50 * 0,25 KB) + (30 * 0,25 KB) = 20 KB / kullanıcı / gün
- Depolama alanı: (20 * 0,75 KB) = 15 KB / kullanıcı / gün
Kullanıcı görevine göre toplam kullanım
İşlemlerin tam açıklamasını ve dökümünü görmek için her bir kullanıcı görevini seçin, depolama maliyetleri ile uygulamadaki ağ maliyetlerini kapsar.
Sohbet listesini görüntüleme
Uygulamanın ana ekranı en son 25 sohbeti yükler. 25 belge okuma ücreti alır. Etkin bir kullanıcının uygulamayı açtığını varsayın 5 ve kullanıcı başına günlük toplam 125 okuma yapıyor. Ancak daha verimli bir sorgu sayısı bu yükü azaltabilir.
Aşağıdaki örnekte, sorguyu uygulama tarafından depolanan her başarılı getirme işlemi için:
db.collection('groups') .where('participants', 'array-contains', 'user123') .where('lastUpdated', '>', lastFetchTimestamp) .orderBy('lastUpdated', 'desc') .limit(25)
Her girişte ortalama 10 güncellenen sohbet olduğunu varsayalım kullanıcı uygulamayı kontrol eder. Bu sorgu yalnızca 10 belge okuma işlemi gerçekleştirir.
Sohbetteki mesajları okuma
Kullanıcılar son sohbetleri görmek için ana ekranda sohbet ileti dizilerini tıklar ilk yüklemede en yeni 50 ileti yükleniyor.
Tipik bir kullanıcının bu işlemi günde 5 kez (bir web sitesi için bu da ana ekranı her açtıklarında 250'ye varan kullanıcı başına günlük okuma. Ayrıca, sorgumuzu yeni iletilerle de sınırlayabiliriz. son getirme zamanından beri:
db.collection('groups') .doc('group234') .collection('messages') .where('sentTime', '>', lastFetchTimestamp) .orderBy('sentTime', 'desc') .limit(50)
Bir kullanıcının tüm sohbetlerde günde yaklaşık 30 mesaj aldığını varsayalım. Başlangıç sorguyu yeni iletileri alacak şekilde sınırlandırdıysanız, bu yalnızca 30 ileti alabilirsiniz.
Sohbette mesaj gönderme
Kullanıcılar, sohbette yer alan diğer katılımcılara mesaj gönderebilir. Etkin bir kullanıcının günde yaklaşık 10 ileti gönderdiğini varsayalım.
Gönderilen her ileti iki doküman yazmasına neden olur: bunlardan biri
Sohbetin messages
alt koleksiyonu ve biri sohbete yazıldı
lastUpdated
zaman damgasını ve diğer
meta verilerdir.
Bu iletilerin okuma maliyetinin diğer yolculukların dışında, aşağıdaki toplamlar yalnızca bu yazma maliyetini dikkate alır.
Yönetici görevleri için faturalanan kullanım
Bir uygulama sahibi veya yöneticisi olarak muhtemelen
verileri için de geçerlidir. Örneğin, ara sıra ziyaret ettiğiniz
görevlerin her birinin
kullanıcılarınızın gönderdiği ileti sayısı. Bunu başarmak için
count()
messages
koleksiyon grubu.
count()
gibi toplama sorguları için bir belge okuma ücreti ödersiniz
(sorguyla eşleşen en fazla 1.000 dizin girişi grubu için) Bu çalıştırılıyor
günlük toplama, şu aylık ücretleri ekler:
Küçük
(50 bin yükleme)
50.000 uygulama yüklemesi (5.000 GEKS): Ayda 0,0009 ABD doları
5.000 etkin kullanıcı x kullanıcı başına 10 yeni ileti = Günlük 50.000 yeni ileti dokümanı
50.000 doküman sayıldı / okuma ücreti başına 1.000 dizin eşleşmesi = 50 okuma
Günde 50 okuma x 30 gün = ayda 1.500 okuma
Ayda 1.500 okuma x 0,06/100.000 okuma fiyatı = Ayda 0,0009 ABD doları
Orta
(1 milyon yükleme)
1.000.000 uygulama yüklemesi (100.000 Günlük Etkin Kullanıcı) için: Ayda 0,018 ABD doları
100.000 etkin kullanıcı x kullanıcı başına 10 yeni ileti = Günlük 1.000.000 yeni ileti dokümanı
1.000.000 doküman sayıldı / Okuma ücreti başına 1.000 dizin eşleşmesi = 1.000 okuma
Günde 1.000 okuma x 30 gün = Ayda 30.000 okuma
Ayda 30.000 okuma x 0,06/100.000 okuma fiyatı = Ayda 0,018 ABD doları
Büyük
(10 Mn yükleme)
10.000.000 uygulama yüklemesi (1.000.000 Günlük Etkin Kullanıcı) için: 0,18 ABD doları
1.000.000 etkin kullanıcı x kullanıcı başına 10 yeni ileti = Günlük 10.000.000 yeni ileti dokümanı
10.000.000 doküman sayıldı / Okuma ücreti başına 1.000 dizin eşleşmesi = 10.000 okuma
Günde 10.000 okuma x 30 gün = ayda 300.000 okuma
Ayda 300.000 okuma x 0,06/100.000 okuma fiyatı = Ayda 0,18 ABD doları
Sunulan avantajlar: Uygulamanız için ücretsiz hizmetler
Cloud Firestore işlemleri, depolama alanı ve ağ bant genişliği gibi birçok avantajdan ücretsiz faydalanırsınız. ek maliyet. Aşağıdaki hizmetlerden ücretsiz olarak yararlanabilirsiniz: Cloud Firestore öğesini diğer veritabanı seçenekleriyle karşılaştırın:
- Doğrudan istemci erişimi: Cloud Firestore uygulamasına doğrudan yerel SDK'larımızı kullanan istemci kodudur. Bu, bir web sitesi için ve mobil istemcilerinizi veritabanına bağlamak için bir API sunucusu çalıştırın.
- Yük dengeleme: Cloud Firestore destek sağlamak için otomatik olarak ölçeklendirildiğinden yük dengeleyici çalıştırmanız gerekmez.
- Sunucu çalışma süresi: Cloud Firestore veritabanları Google Cloud sunucularında çalışır. aylık% 99'un üzerinde çalışma süresi sunuyor.
- Kimlik doğrulama: Sınırsız sayıda kullanıcının kimliğini basit ve güvenli bir şekilde doğrulamak için Firebase Authentication. Firebase Authentication Cloud Firestore ile doğrudan entegre olduğundan, kendi uygulamanızı çalıştırmanız gerekmez kimlik doğrulama hizmeti.
- Push bildirimleri: Mesaj ve bildirim göndermek için şu uygulamayı kullanın: Cloud Messaging.
- Diğer Firebase ürünleri: Diğer Firebase ürünlerini ücretsiz olarak entegre edebilirsiniz. A/B Testi, Analytics, Crashlytics, Performans İzleme ve ve Remote Config. Diğer Firebase ürünleri hakkında daha fazla bilgi edinin. ve Firebase fiyatlandırması.