Ringkasan Firestore

Firestore adalah database yang fleksibel dan skalabel untuk pengembangan seluler, web, dan server di Firebase serta Google Cloud. Firestore menjaga data Anda selalu sinkron di seluruh aplikasi klien melalui pemroses realtime dan menawarkan dukungan offline untuk perangkat seluler dan web. Dengan demikian, Anda dapat mem-build aplikasi responsif yang tetap berfungsi terlepas dari faktor latensi jaringan atau konektivitas internet. Firestore juga menawarkan integrasi yang lancar dengan produk Firebase dan Google Cloud lainnya, termasuk fungsi Cloud Run.

Kemampuan utama

Fleksibilitas Model data Firestore mendukung struktur data yang hierarkis dan 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 realtime 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 digunakan secara aktif oleh aplikasi Anda ke dalam cache, sehingga aplikasi dapat menulis, membaca, memproses, dan membuat kueri 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 API 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 apa pun 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