Ikuti semua informasi yang diumumkan di Firebase Summit, dan pelajari bagaimana Firebase dapat membantu Anda mempercepat pengembangan aplikasi dan menjalankan aplikasi dengan percaya diri. Pelajari Lebih Lanjut

Lihat contoh harga Cloud Firestore

Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

Gunakan contoh dunia nyata dari aplikasi obrolan dasar ini untuk mengukur penggunaan dan biaya Cloud Firestore Anda. Ini bukan perkiraan pasti, tetapi dapat membantu Anda lebih memahami bagaimana tagihan penggunaan Cloud Firestore Anda.

Ikhtisar: Biaya berdasarkan tingkat penggunaan

Untuk mengilustrasikan biaya umum, pertimbangkan aplikasi obrolan contoh, tempat pengguna dapat memulai obrolan dengan dua peserta atau lebih. Pengguna dapat melihat obrolan aktif mereka dalam daftar, membaca pesan, dan mengirim pesan. Untuk contoh ini, kami menggunakan harga untuk multi-region Amerika Utara (khususnya nam5 ).

Asumsi

Pertimbangkan asumsi berikut tentang penggunaan dan penyimpanan data:

  • Pengguna Aktif Harian (DAU) adalah 10% dari total penginstalan aplikasi. Anda dapat memperkirakan biaya harian Anda menggunakan perkiraan kasar dari Pengguna Aktif Harian (DAU) Anda. Ini adalah pengguna yang secara aktif membuka dan menggunakan aplikasi Anda pada hari tertentu, yang biasanya merupakan sebagian kecil dari total penginstalan aplikasi Anda. Untuk penghitungan di bawah, kami memperkirakan DAU sebesar 10% dari total jumlah penginstalan aplikasi.
  • Ukuran dokumen relatif kecil. Lihat tabel di bawah untuk perincian ukuran dokumen berdasarkan jenis.
  • Data hanya disimpan selama tiga bulan. Pesan di aplikasi obrolan contoh hanya disimpan untuk jangka waktu tiga bulan. Untuk memperhitungkan operasi penghapusan, perhitungan di bawah menunjukkan penghapusan harian untuk setiap penulisan harian.
  • Estimasi biaya ini mencerminkan sebagian besar biaya aplikasi contoh, tetapi tidak semuanya. Kami telah memperhitungkan sebagian besar biaya aplikasi dengan menghitung operasi, penyimpanan pengguna dan pesan, serta jalan keluar untuk tugas pengguna yang paling sering diuraikan dalam panduan ini. Namun, Anda mungkin perlu memperhitungkan biaya tambahan, bergantung pada struktur aplikasi dan kebutuhan data Anda. Gunakan contoh ini untuk memandu perhitungan Anda, tetapi lihat halaman harga untuk penjelasan lebih menyeluruh tentang biaya Cloud Firestore.

Untuk perincian operasi menurut tugas pengguna, lihat bagian Perincian: Penggunaan yang ditagih menurut tugas pengguna .

Kecil
(50rb pemasangan)

Untuk 50.000 penginstalan aplikasi (5.000 Pengguna Aktif Harian): $12,14/bulan

Biaya Baca/Tulis
Total biaya bulanan = $11,10/bulan
400 ribu total bacaan harian = 50K Bacaan gratis + (350K Bacaan seharga $0,06/100K) = 3,5 * $0,06
$0,21 / hari * 30 = $6,30
100 ribu total penulisan harian = 20K penulisan tanpa biaya + (80K penulisan dengan $0,18/100K) = .8 * $0,18
$0,14 / hari * 30 = $4,20
100 ribu total penghapusan harian = 20K penghapusan tanpa biaya + (80K penghapusan dengan $0,02/100K) = .8 * $0,02
$0,02 / hari * 30 = $0,60
Biaya Penyimpanan/Jaringan
Total biaya bulanan = $1,04/bulan
20KB / DAU jalan keluar harian * 5K DAU = 100MB jalan keluar harian * 30 = Keluar jaringan bulanan 3 GB
3 GB jalan keluar tanpa biaya = Tanpa biaya 1
Penyimpanan pesan harian 15KB / penyimpanan DAU + penyimpanan 3KB / pemasangan 2 = Penyimpanan 45KB / DAU * 5K DAU = Penyimpanan harian 225MB / DAU * 30 = Penggunaan penyimpanan bulanan 6,75GB
Penyimpanan gratis 1GB + (5,75 * $0,18) = $1,04 / bulan

1 keluar jaringan bulanan 10 GB gratis untuk Cloud Firestore.
2 Karena asumsi kami adalah bahwa DAU adalah 10% dari total penginstalan aplikasi, jumlah ini merupakan jumlah total pengguna yang telah menginstal aplikasi Anda.

Medium
(1 juta pemasangan)

Untuk 1.000.000 penginstalan aplikasi (100.000 Pengguna Aktif Harian): $292,02/bulan

Biaya Baca/Tulis
Total biaya bulanan = $261,90/bulan
8 juta total bacaan harian = 50K Bacaan gratis + (7,95Jt baca dengan $0,06/100K) = 79,5 * $0,06
$4,77 / hari * 30 = $143,10
2 juta total penulisan harian = 20K penulisan tanpa biaya + (1,98Jt penulisan dengan $0,18/100K) = 19,8 * $0,18
$3,56 / hari * 30 = $106,80
2 juta total penghapusan harian = 20K penghapusan tanpa biaya + (1,98 juta penghapusan dengan $0,02/100K) = 19,8 * $0,02
$0,40 / hari * 30 = $12,00
Biaya Penyimpanan/Jaringan
Total biaya bulanan = $30,12/bulan
20KB / DAU jalan keluar harian * 100K DAU = 2GB jalan keluar harian * 30 = Jalan keluar jaringan bulanan 60 GB
Jalan keluar gratis 10 GB + (jalan keluar 50 GB * $0,12/GB) = $6,00/bulan
Penyimpanan pesan harian 15KB / penyimpanan DAU + penyimpanan 3KB / instal 1 = Penyimpanan 45KB / DAU * 100K DAU = Penyimpanan harian 4,5GB / DAU * 30 = Penggunaan penyimpanan bulanan 135GB
Penyimpanan gratis 1GB + (134GB * $0,18/GB) = $24,12 / bulan

1 Karena asumsi kami adalah bahwa DAU adalah 10% dari total penginstalan aplikasi, jumlah ini merupakan jumlah total pengguna yang telah menginstal aplikasi Anda.

Besar
(10 juta pemasangan)

Untuk 10.000.000 penginstalan aplikasi (1.000.000 Pengguna Aktif Harian): $2951,52

Biaya Baca/Tulis
Total biaya bulanan = Total: $2637.90/bulan
80 juta total bacaan harian = 50K Bacaan gratis + (79,95Jt baca dengan $0,06/100K) = 799,5 * $0,06
$47,97 / hari * 30 = $1439,10
20 juta total penulisan harian = 20K penulisan tanpa biaya + (19,98 juta penulisan dengan $0,18/100K) = 199,8 * $0,18
$35,96 / hari * 30 = $1078,80
20 juta total penghapusan harian = 20K penghapusan tanpa biaya + (19,98 juta penghapusan dengan $0,02/100K) = 199,8 * $0,02
$4,00 / hari * 30 = $120,00
Biaya Penyimpanan/Jaringan
Total biaya bulanan = $313,62/bulan
20 KB / DAU jalan keluar harian * 1 juta DAU = 20GB jalan keluar harian * 30 = Jalan keluar jaringan bulanan 600 GB
10 GB jalan keluar gratis + (590 GB jalan keluar * $0,12/GB) = $70,80 / bulan
Penyimpanan pesan harian 15KB / penyimpanan DAU + penyimpanan 3KB / instal 1 = Penyimpanan 45 KB / DAU * 1 juta DAU = Penyimpanan harian 45GB / DAU * 30 = Penggunaan penyimpanan bulanan 1350GB
(Penyimpanan gratis 1GB) + (1349GB * $0,18/GB) = $242,82 / bulan

1 Karena asumsi kami adalah bahwa DAU adalah 10% dari total penginstalan aplikasi, jumlah ini merupakan jumlah total pengguna yang telah menginstal aplikasi Anda.

Manfaat model penagihan Cloud Firestore yang patut dipertimbangkan adalah Anda hanya membayar apa yang Anda gunakan. Akibatnya, tagihan Anda dapat bertambah dan menyusut sesuai dengan jumlah DAU Anda.

Perincian: Penggunaan yang ditagih berdasarkan tugas pengguna

Untuk aplikasi obrolan contoh kami, struktur datanya adalah sebagai berikut:

  • users/{userId} — Catatan pengguna
  • groups/{groupId} — Obrolan antara 2 pengguna atau lebih
    • messages/{messageId} — Setiap pesan dalam obrolan.

Penyimpanan data

Untuk menghitung biaya penyimpanan untuk menyimpan data aplikasi, terapkan asumsi berikut tentang ukuran dokumen:

Koleksi Ukuran Dokumen (dalam perjalanan) Ukuran Dokumen (pada disk)*
pengguna 1KB 3KB
grup 0,5KB 1,5KB
pesan 0,25 KB 0,75KB

*Penghitungan ukuran ini mencakup indeks untuk bidang pesan, tetapi menganggap pengindeksan dinonaktifkan untuk konten pesan.

Aplikasi ini juga hanya menyimpan pesan yang berumur hingga tiga bulan, untuk menghemat biaya penyimpanan.

Untuk informasi selengkapnya tentang cara menghitung biaya penyimpanan, lihat Memahami perhitungan ukuran penyimpanan .

Operasi

Pengguna biasanya menyelesaikan tugas umum berikut di aplikasi:

Estimasi total operasi aplikasi contoh di Cloud Firestore untuk tiga tugas umum pengguna adalah sebagai berikut:

  • Bacaan: (5 * 10) + (30) = 80 bacaan / pengguna / hari
  • Menulis: (10 * 2) = 20 menulis / pengguna / hari
  • Jalan Keluar Jaringan : (50 * 0,25KB) + (30 * 0,25KB) = 20KB / pengguna / hari
  • Penyimpanan : (20 * 0,75KB) = 15 KB / pengguna / hari

Total penggunaan berdasarkan tugas pengguna

Pilih setiap tugas pengguna untuk melihat deskripsi lengkap dan perincian biaya operasi, penyimpanan, dan jaringan di aplikasi.

Lihat daftar obrolan

Layar beranda aplikasi memuat 25 obrolan terbaru, dikenakan biaya untuk 25 pembacaan dokumen. Asumsikan bahwa pengguna aktif membuka aplikasi 5 kali per hari, dengan total 125 kali dibaca per pengguna setiap hari. Namun, kueri yang lebih efisien, seperti contoh berikut, dapat mengurangi beban ini.

Pada contoh di bawah, kami membatasi kueri ke obrolan baru menggunakan stempel waktu setiap pengambilan yang berhasil, yang disimpan oleh aplikasi:

db.collection('groups')
  .where('participants', 'array-contains', 'user123')
  .where('lastUpdated', '>', lastFetchTimestamp)
  .orderBy('lastUpdated', 'desc')
  .limit(25)

Asumsikan ada rata-rata 10 obrolan yang diperbarui setiap kali pengguna memeriksa aplikasi. Kueri ini hanya menimbulkan 10 pembacaan dokumen.

Membaca pesan dalam obrolan

Pengguna mengklik utas obrolan dari layar beranda untuk melihat pesan terbaru, memuat 50 pesan terbaru di pemuatan awal.

Asumsikan pengguna biasa melakukan tindakan ini 5 kali sehari (sekali untuk setiap kali mereka membuka layar beranda), yang menghasilkan total 250 pembacaan per pengguna setiap hari. Kami juga dapat membatasi kueri kami ke pesan baru sejak waktu pengambilan terakhir:

db.collection('groups')
  .doc('group234')
  .collection('messages')
  .where('sentTime', '>', lastFetchTimestamp)
  .orderBy('sentTime', 'desc')
  .limit(50)

Asumsikan bahwa pengguna mendapat sekitar 30 pesan sehari di semua obrolan. Karena Anda telah membatasi kueri untuk mengambil pesan baru, ini berarti hanya 30 pesan yang diambil/hari.

Kirim pesan ke obrolan

Pengguna dapat mengirim pesan ke peserta lain setelah mereka mengobrol. Asumsikan bahwa pengguna aktif mengirimkan sekitar 10 pesan per hari.

Setiap pesan terkirim akan menyebabkan dua penulisan dokumen: satu penulisan ke subkoleksi messages obrolan dan satu penulisan ke dokumen induk obrolan untuk memperbarui lastUpdated waktu yang terakhir diperbarui dan metadata lainnya.

Perhatikan bahwa biaya membaca pesan-pesan ini telah diperhitungkan dalam perjalanan lainnya, sehingga total di bawah ini hanya memperhitungkan biaya menulis ini.

Manfaat yang disertakan: Layanan gratis untuk aplikasi Anda

Meskipun operasi, penyimpanan, dan bandwidth jaringan Cloud Firestore semuanya dianggap sebagai penggunaan yang dapat ditagih, Anda juga mendapatkan berbagai manfaat lainnya tanpa biaya tambahan. Pertimbangkan layanan gratis berikut saat Anda membandingkan Cloud Firestore dengan opsi database lainnya:

  • Akses klien langsung: Cloud Firestore diakses langsung dari kode klien Anda menggunakan SDK asli kami. Ini berarti Anda tidak perlu membangun dan menjalankan server API untuk menghubungkan klien seluler Anda ke database.
  • Load balancing: Karena Cloud Firestore menskalakan secara otomatis untuk mendukung traffic ke database, Anda tidak perlu menjalankan load balancer.
  • Waktu aktif server: Database Cloud Firestore beroperasi di server Google Cloud, menawarkan lebih dari 99% waktu aktif bulanan .
  • Otentikasi: Otentikasi pengguna tak terbatas secara sederhana dan aman dengan Firebase Authentication . Firebase Authentication terintegrasi langsung dengan Cloud Firestore sehingga Anda tidak perlu menjalankan layanan autentikasi Anda sendiri.
  • Notifikasi push: Kirim pesan dan notifikasi dengan Cloud Messaging .
  • Produk Firebase lainnya: Integrasikan produk Firebase lainnya tanpa biaya, termasuk Pengujian A/B, Analytics, Crashlytics, Performance Monitoring, dan Remote Config. Pelajari lebih lanjut produk Firebase lainnya dan harga Firebase .