Catch up on everything we announced at this year's Firebase Summit. Learn more

Penggunaan dan batasnya

Gunakan panduan ini untuk memahami batas Cloud Firestore dan lihat Harga Cloud Firestore untuk penjelasan lengkap mengenai biaya Cloud Firestore, termasuk berbagai hal yang harus diperhatikan.

Memantau penggunaan

Untuk memantau penggunaan Cloud Firestore, buka tab Penggunaan Cloud Firestore di Firebase console. Gunakan dasbor untuk mengukur penggunaan Anda selama jangka waktu yang berbeda.

Detail Penggunaan pada Google Cloud Console

Saat membuat project Firebase, Anda juga membuat project Google Cloud. Halaman Kuota App Engine di Google Cloud Console memantau informasi penggunaan dan kuota Cloud Firestore.

Kuota gratis

Cloud Firestore menawarkan kuota gratis, sehingga Anda dapat memulai tanpa biaya. Jumlah kuota gratis tersebut tercantum di bawah ini. Jika memerlukan kuota lebih banyak, Anda harus mengaktifkan penagihan untuk project Cloud Platform.

Kuota diterapkan setiap hari dan direset pada tengah malam waktu Pasifik.

Paket gratis Kuota
Data tersimpan 1 GiB
Pembacaan dokumen 50.000 per hari
Penulisan dokumen 20.000 per hari
Penghapusan dokumen 20.000 per hari
Traffic keluar jaringan 10 GiB per bulan

Batas standar

Tabel berikut menunjukkan batas yang berlaku untuk Cloud Firestore. Ini adalah batas yang tidak dapat dilewati kecuali jika dinyatakan lain.

Koleksi, dokumen, dan kolom

Batas Detail
Batasan pada ID koleksi
  • Harus berupa karakter UTF-8 yang valid
  • Tidak boleh lebih dari 1.500 byte
  • Tidak boleh berisi garis miring (/)
  • Tidak boleh hanya terdiri dari satu titik (.) atau dua titik (..)
  • Tidak boleh cocok dengan ekspresi reguler __.*__.
Kedalaman maksimum subkoleksi 100
Batasan pada ID dokumen
  • Harus berupa karakter UTF-8 yang valid
  • Tidak boleh lebih dari 1.500 byte
  • Tidak boleh berisi garis miring (/)
  • Tidak boleh hanya terdiri dari satu titik (.) atau dua titik (..)
  • Tidak boleh cocok dengan ekspresi reguler __.*__.
  • Jika Anda mengimpor entity Datastore ke database Firestore, ID entity numerik akan diekspos sebagai __id[0-9]+__
Ukuran maksimum untuk nama dokumen 6 KiB
Ukuran maksimum untuk dokumen 1 MiB (1.048.576 byte)
Batasan pada nama kolom Harus berupa karakter UTF-8 yang valid
Ukuran maksimum nama kolom 1.500 byte
Batasan pada jalur kolom
  • Harus memisahkan nama kolom dengan satu titik (.)
  • Dapat diteruskan sebagai string jika semua nama kolom di jalurnya sederhana, atau harus diteruskan sebagai objek FieldPath (misalnya JavaScript FieldPath)
Nama kolom sederhana adalah yang memenuhi semua kondisi berikut ini:
  • Hanya berisi karakter a-z, A-Z, 0-9, dan garis bawah (_)
  • Tidak diawali dengan 0-9
Ukuran maksimum jalur kolom 1.500 byte
Ukuran maksimum nilai kolom 1 MiB - 89 byte (1.048.487 byte)
Kedalaman maksimum kolom dalam peta atau array 20

Penulisan dan transaksi

Batas Detail
Penulisan maksimum per detik per database 10.000 (hingga 10 MiB per detik)
Ukuran permintaan API maksimum 10 MiB
Jumlah maksimum penulisan yang dapat diteruskan ke operasi Commit atau dilakukan dalam transaksi 500
Jumlah maksimum transformasi kolom yang dapat dilakukan di satu dokumen dalam operasi Commit atau dalam transaksi 500
Batas waktu untuk transaksi 270 detik, dengan masa tenggang 60 detik

Batas yang dapat dilewati

Cloud Firestore tidak akan menghentikan Anda melampaui batas berikut, tetapi hal ini memengaruhi performa.

Batas yang dapat dilewati Detail
Kecepatan penulisan konstan maksimum ke dokumen

1 per detik

Mempertahankan kecepatan penulisan di atas satu kali per detik akan meningkatkan latensi dan menyebabkan error pertentangan. Ini bukan batas yang ketat, dan Anda dapat melampaui batas dalam burst singkat.

Kecepatan penulisan maksimum ke koleksi lokasi dokumen yang berisi nilai berurutan dalam kolom terindeks 500 per detik

Update realtime

Batas yang dapat dilewati Detail
Koneksi serentak maksimum untuk klien seluler/web per database

1.000.000

Cloud Firestore tidak akan menghentikan Anda melampaui batas yang dapat dilewati, tetapi hal ini sangat memengaruhi latensi dan tingkat error.

Indeks

Batas berikut berlaku untuk indeks kolom tunggal dan indeks gabungan:

Batas Detail
Jumlah maksimum indeks komposit untuk database 200
Jumlah maksimum pengecualian indeks kolom tunggal untuk database 200

Jumlah maksimum entri indeks untuk setiap dokumen

40.000

Jumlah entri indeks adalah jumlah hal berikut untuk dokumen:

  • Jumlah entri indeks kolom tunggal
  • Jumlah entri indeks komposit

Untuk melihat cara Cloud Firestore mengubah dokumen dan kumpulan indeks menjadi entri indeks, lihat contoh perhitungan entri indeks ini.

Ukuran maksimum entri indeks

7,5 KiB

Untuk melihat cara Cloud Firestore menghitung ukuran entri indeks, lihat ukuran entri indeks.

Jumlah maksimum ukuran entri indeks pada dokumen

8 MiB

Ukuran total adalah jumlah hal berikut untuk dokumen:

  • Jumlah ukuran entri indeks kolom tunggal pada dokumen
  • Jumlah ukuran entri indeks komposit pada dokumen
  • Ukuran maksimum nilai kolom terindeks

    1.500 byte

    Nilai kolom di atas 1.500 byte akan terpotong. Kueri yang mencakup nilai kolom terpotong dapat menampilkan hasil yang tidak konsisten.

    Ekspor/Impor

    Batas berikut berlaku untuk operasi impor dan ekspor terkelola:

    Batas Detail
    Jumlah total maksimum permintaan ekspor dan impor untuk project yang diizinkan per menit 20
    Jumlah maksimum ekspor dan impor serentak 50
    Jumlah maksimum filter ID koleksi untuk permintaan ekspor dan impor 100

    Aturan keamanan

    Batas Detail
    Jumlah maksimum panggilan exists(), get(), dan getAfter() per permintaan
    • 10 untuk permintaan dokumen tunggal dan permintaan kueri.
    • 20 untuk pembacaan, transaksi, dan penulisan batch multidokumen. Batas 10 sebelumnya juga berlaku untuk setiap operasi.

      Misalnya, bayangkan Anda membuat permintaan penulisan batch dengan 3 operasi penulisan, dan aturan keamanan menggunakan 2 panggilan akses dokumen untuk memvalidasi setiap penulisan. Dalam hal ini, setiap penulisan menggunakan 2 dari 10 panggilan aksesnya dan permintaan penulisan batch menggunakan 6 dari 20 panggilan aksesnya.

    Melebihi salah satu batas akan menyebabkan error izin ditolak.

    Beberapa panggilan akses dokumen dapat dimasukkan cache, dan panggilan yang masuk cache tidak diperhitungkan dalam batas tersebut.

    Kedalaman maksimum pernyataan match bertingkat 10
    Panjang jalur maksimum, pada segmen jalur, yang diizinkan dalam sekumpulan pernyataan match bertingkat 100
    Jumlah maksimum variabel tangkapan jalur yang diizinkan dalam sekumpulan pernyataan match bertingkat 20
    Kedalaman maksimum panggilan fungsi 20
    Jumlah maksimum argumen fungsi 7
    Jumlah maksimum binding variabel let per fungsi 10
    Jumlah maksimum panggilan fungsi siklis atau rekursif 0 (tidak diizinkan)
    Jumlah maksimum ekspresi yang dievaluasi per permintaan 1.000
    Ukuran maksimum kumpulan aturan Kumpulan aturan harus mematuhi dua batas ukuran:
    • Batas 256 KB pada ukuran sumber teks kumpulan aturan yang dipublikasikan dari Firebase console atau dari CLI menggunakan firebase deploy.
    • Batas 250 KB pada ukuran kumpulan aturan kompilasi yang dihasilkan saat Firebase memproses sumber dan menjadikannya aktif di back-end.

    Mengelola pengeluaran

    Untuk membantu menghindari biaya yang tidak terduga pada tagihan Anda, tetapkan anggaran dan pemberitahuan bulanan.

    Menetapkan anggaran bulanan

    Untuk melacak biaya Cloud Firestore, buat anggaran bulanan di Google Cloud Console. Anggaran tidak akan membatasi penggunaan, tetapi Anda dapat menyiapkan pemberitahuan saat Anda mendekati atau melampaui biaya yang direncanakan untuk bulan tersebut.

    Untuk menetapkan anggaran, buka bagian Penagihan di Google Cloud Console dan buat anggaran untuk akun Penagihan Cloud Anda. Anda dapat menggunakan setelan pemberitahuan default atau mengubahnya untuk mengirim notifikasi saat mencapai persentase tertentu anggaran bulanan Anda.

    Pelajari lebih lanjut cara menyiapkan anggaran dan pemberitahuan anggaran.

    Menetapkan batas pembelanjaan harian

    Untuk membatasi penggunaan Cloud Firestore Anda, tetapkan batas pembelanjaan harian melalui App Engine. Dengan App Engine, Anda dapat menetapkan batas pembelanjaan harian pada resource yang terkait dengan App Engine, termasuk Cloud Firestore. Batas App Engine tidak berlaku untuk produk Firebase lainnya.