Ringkasan Firestore
Firestore adalah database yang fleksibel dan skalabel untuk pengembangan seluler, web, dan server di Firebase serta Google Cloud. Firestore terus menyinkronkan data Anda di seluruh aplikasi klien melalui pemroses realtime dan menawarkan dukungan offline untuk perangkat seluler dan web, sehingga Anda dapat membuat aplikasi responsif yang berfungsi terlepas dari latensi jaringan atau konektivitas Internet. Firestore juga menawarkan integrasi yang lancar dengan produk Firebase dan Google Cloud lainnya, termasuk Cloud Functions.
Kemampuan utama
Fleksibilitas | Model data Firestore mendukung struktur data hierarkis yang fleksibel. Simpan data Anda ke dalam dokumen yang tersusun dalam koleksi. Selain subkoleksi, dokumen dapat berisi objek bertingkat yang kompleks. |
Pembuatan kueri yang ekspresif | Di Firestore, Anda dapat menggunakan kueri untuk mengambil masing-masing dokumen tertentu atau semua dokumen dalam koleksi yang sesuai dengan parameter kueri Anda. Kueri Anda dapat meliputi beberapa filter berantai dan menggabungkan filter dan pengurutan. Kueri juga diindeks secara default, sehingga performa kueri sebanding dengan ukuran set hasil, bukan set data. |
Dirancang untuk diskalakan | Firestore menghadirkan replikasi data multi-region otomatis, kueri yang sangat konsisten, operasi batch atomik, dan dukungan transaksi. |
Update real-time | Firestore menggunakan sinkronisasi data untuk memperbarui data di perangkat yang terhubung. Namun, Cloud Firestore juga dirancang untuk membuat kueri pengambilan 1 kali yang sederhana secara efisien. |
Dukungan offline | Firestore menyimpan data yang aktif digunakan aplikasi Anda ke dalam cache, sehingga aplikasi dapat menulis, membaca, memproses, dan mengkueri data meskipun perangkat sedang offline. Saat perangkat kembali online, Firestore akan menyinkronkan semua perubahan lokal kembali ke Firestore. |
Bagaimana cara kerjanya?
Firestore adalah database NoSQL yang dihosting di cloud dan tersedia di library klien Node.js, Java, Python, Unity, C++, dan Go, selain REST dan RPC API. Aplikasi Apple, Android, dan web juga dapat mengakses database secara langsung menggunakan library klien.
Dengan mengikuti model data NoSQL Firestore, Anda menyimpan data dalam dokumen yang berisi kolom yang dipetakan terhadap nilai. Dokumen ini disimpan dalam koleksi, yang merupakan container untuk dokumen Anda, yang dapat digunakan untuk mengatur data dan mem-build kueri. Dokumen mendukung berbagai jenis data, mulai dari string dan angka sederhana, hingga objek bertingkat yang kompleks. Anda juga dapat membuat subkoleksi dalam dokumen dan mem-build struktur data hierarkis yang dapat diskalakan sesuai dengan pertumbuhan database. Model data Firestore mendukung struktur data yang paling sesuai untuk aplikasi Anda.
Selain itu, pembuatan kueri di Firestore bersifat ekspresif, efisien, dan fleksibel. Buatlah kueri dangkal untuk mengambil data pada tingkat dokumen tanpa perlu mengambil keseluruhan koleksi atau subkoleksi bertingkat. Tambahkan pengurutan, filter, dan batasan pada kueri atau kursor untuk memberi nomor halaman pada hasil Anda. Tambahkan pemroses realtime untuk menjaga data di aplikasi Anda tetap terkini, tanpa harus mengambil keseluruhan database setiap kali ada pembaruan. Dengan menambahkan pemroses realtime ke aplikasi, Anda akan mendapatkan pemberitahuan tentang snapshot data setiap kali data yang diproses oleh aplikasi klien berubah. Hanya perubahan baru yang akan diambil.
Lindungi akses ke data Anda di Firestore dengan Identity and Access Management (IAM) untuk bahasa sisi server. Untuk Android, platform Apple, dan JavaScript, lindungi data Anda dengan Firebase Authentication dan Aturan Keamanan Firestore.
Langkah selanjutnya
- Mulai menggunakan Firestore — siapkan database Anda, lalu tambahkan data dan mulailah membacanya.
- Pelajari model data Firestore lebih lanjut.
- Membuat dan mengelola database.