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

Penggunaan dan batasan

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

Gunakan panduan ini untuk memahami batasan Cloud Firestore, dan lihat Harga Cloud Firestore untuk penjelasan lengkap dan mendetail tentang biaya Cloud Firestore, termasuk hal-hal yang harus diperhatikan.

Pantau penggunaan Anda

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

Penggunaan mendetail di Google Cloud Console

Saat Anda membuat proyek Firebase, Anda juga membuat proyek Google Cloud. Halaman Cloud Firestore API Quotas dan App Engine Quotas di Google Cloud Console melacak penggunaan dan informasi kuota Cloud Firestore.

Kuota gratis

Cloud Firestore menawarkan kuota gratis yang memungkinkan Anda memulai tanpa biaya. Jumlah kuota gratis tercantum di bawah ini. Jika membutuhkan lebih banyak kuota, Anda harus mengaktifkan penagihan untuk project Cloud Platform Anda .

Kuota diterapkan setiap hari dan disetel ulang sekitar tengah malam waktu Pasifik.

Tingkat gratis Kuota
Data tersimpan 1 GiB
Pembacaan dokumen 50.000 per hari
Dokumen menulis 20.000 per hari
Penghapusan dokumen 20.000 per hari
Jalan keluar jaringan 10 GiB per bulan

Batas standar

Tabel berikut menampilkan batasan yang berlaku untuk Cloud Firestore. Ini adalah batas keras kecuali dinyatakan lain.

Koleksi, dokumen, dan bidang

Membatasi Detail
Kendala 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 titik ganda ( .. )
  • Tidak dapat cocok dengan ekspresi reguler __.*__
Kedalaman subkoleksi maksimum 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 titik ganda ( .. )
  • Tidak dapat cocok dengan ekspresi reguler __.*__
  • Jika Anda mengimpor entitas Datastore ke database Firestore, ID entitas numerik ditampilkan sebagai __id[0-9]+__
Ukuran maksimum untuk nama dokumen 6 KiB
Ukuran maksimum untuk sebuah dokumen 1 MiB (1.048.576 byte)
Kendala pada nama bidang Harus berupa karakter UTF-8 yang valid
Ukuran maksimum nama bidang 1.500 byte
Batasan pada jalur bidang
  • Harus memisahkan nama bidang dengan titik tunggal ( . )
  • Dapat diteruskan sebagai string ketika semua nama bidang di jalur sederhana, jika tidak, harus diteruskan sebagai objek FieldPath ( mis. JavaScript FieldPath )
Nama bidang sederhana adalah salah satu di mana semua hal berikut ini benar:
  • Hanya berisi karakter az , AZ , 0-9 , dan garis bawah ( _ )
  • Tidak dimulai dengan 0-9
Ukuran maksimum jalur bidang 1.500 byte
Ukuran maksimum nilai bidang 1 MiB - 89 byte (1.048.487 byte)
Kedalaman bidang maksimum dalam peta atau larik 20

Menulis dan transaksi

Selain batasan ini, Anda juga harus melihat praktik terbaik untuk mendesain untuk skala .

Membatasi Detail
Ukuran permintaan API maksimum 10 MiB
Jumlah maksimum penulisan yang dapat diteruskan ke operasi Commit atau dilakukan dalam transaksi 500
Jumlah maksimum transformasi bidang yang dapat dilakukan pada satu dokumen dalam operasi Commit atau dalam transaksi 500
Batas waktu untuk transaksi 270 detik, dengan waktu kedaluwarsa idle 60 detik

Batas lunak

Cloud Firestore tidak menghentikan Anda melebihi ambang batas di bawah, tetapi hal itu akan memengaruhi performa.

Batas lunak Detail
Laju tulis maksimum ke koleksi di mana dokumen berisi nilai berurutan dalam bidang yang diindeks 500 per detik

Indeks

Batasan berikut berlaku untuk indeks bidang tunggal dan indeks komposit :

Membatasi Detail
Jumlah maksimum indeks komposit untuk database

200

Anda dapat menghubungi dukungan untuk meminta peningkatan batas ini.

Jumlah maksimum konfigurasi bidang tunggal untuk database

200

Sebanyak 200 konfigurasi tingkat lapangan diperbolehkan. Satu konfigurasi bidang dapat berisi beberapa konfigurasi untuk bidang yang sama. Misalnya, pengecualian pengindeksan kolom tunggal dan kebijakan TTL pada kolom yang sama dihitung sebagai satu konfigurasi kolom menuju batas.

Jumlah maksimum entri indeks untuk setiap dokumen

40.000

Jumlah entri indeks adalah jumlah dari yang berikut untuk sebuah dokumen:

  • Jumlah entri indeks kolom tunggal
  • Jumlah entri indeks komposit

Untuk melihat bagaimana Cloud Firestore mengubah dokumen dan sekumpulan indeks menjadi entri indeks, lihat contoh jumlah entri indeks ini .

Jumlah maksimum bidang dalam indeks gabungan 100
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 dokumen

8 MiB

Ukuran total adalah jumlah dari berikut ini untuk sebuah dokumen:

  • Jumlah ukuran entri indeks bidang tunggal dokumen
  • Jumlah ukuran entri indeks gabungan dokumen
  • Ukuran maksimum nilai bidang yang diindeks

    1500 byte

    Nilai kolom lebih dari 1500 byte akan dipotong. Kueri yang melibatkan nilai bidang terpotong dapat mengembalikan hasil yang tidak konsisten.

    Waktu-ke-hidup (TTL)

    Membatasi Detail
    Jumlah maksimum konfigurasi bidang tunggal untuk database

    200

    Sebanyak 200 konfigurasi tingkat lapangan diperbolehkan. Satu konfigurasi bidang dapat berisi beberapa konfigurasi untuk bidang yang sama. Misalnya, pengecualian pengindeksan kolom tunggal dan kebijakan TTL pada kolom yang sama dihitung sebagai satu konfigurasi kolom menuju batas.

    Ekspor Impor

    Batasan berikut berlaku untuk operasi impor dan ekspor terkelola :

    Membatasi Detail
    Jumlah maksimum permintaan ekspor dan impor untuk proyek yang diizinkan per menit 20
    Jumlah maksimum ekspor dan impor bersamaan 50
    Jumlah maksimum filter ID koleksi untuk permintaan ekspor dan impor 100

    Aturan keamanan

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

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

    Melebihi salah satu batas akan menyebabkan kesalahan penolakan izin.

    Beberapa panggilan akses dokumen mungkin di-cache, dan panggilan yang di-cache tidak diperhitungkan dalam batas.

    Kedalaman pernyataan match bersarang maksimum 10
    Panjang jalur maksimum, dalam segmen jalur, diizinkan dalam kumpulan pernyataan match bersarang 100
    Jumlah maksimum variabel tangkapan jalur yang diizinkan dalam kumpulan pernyataan match bersarang 20
    Kedalaman panggilan fungsi maksimum 20
    Jumlah maksimum argumen fungsi 7
    Jumlah maksimum pengikatan variabel let per fungsi 10
    Jumlah maksimum pemanggilan fungsi rekursif atau siklis 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 untuk ukuran sumber teks kumpulan aturan yang dipublikasikan dari Firebase console atau dari CLI menggunakan firebase deploy .
    • batas 250 KB untuk ukuran kumpulan aturan terkompilasi yang dihasilkan saat Firebase memproses sumber dan mengaktifkannya di back-end.

    Kelola pengeluaran

    Untuk membantu menghindari tagihan tak terduga pada tagihan Anda, tetapkan anggaran dan peringatan bulanan.

    Tetapkan anggaran bulanan

    Untuk melacak biaya Cloud Firestore Anda, buat anggaran bulanan di Google Cloud Console. Anggaran tidak akan membatasi penggunaan Anda, tetapi Anda dapat menyetel lansiran untuk memberi tahu Anda saat Anda mendekati atau melampaui biaya yang direncanakan untuk bulan itu.

    Untuk menetapkan anggaran, buka bagian Penagihan di Google Cloud Console dan buat anggaran untuk akun Penagihan Cloud Anda. Anda dapat menggunakan setelan lansiran default atau mengubah lansiran untuk mengirimkan pemberitahuan dengan persentase berbeda dari anggaran bulanan Anda.

    Pelajari lebih lanjut tentang menyiapkan anggaran dan lansiran anggaran .

    Tetapkan batas pengeluaran harian

    Untuk membatasi penggunaan Cloud Firestore Anda, tetapkan batas pengeluaran harian melalui App Engine. App Engine memungkinkan Anda menetapkan batas pengeluaran harian untuk sumber daya terkait App Engine, termasuk Cloud Firestore. Batas App Engine tidak berlaku untuk produk Firebase lainnya.