Firebase Realtime Database adalah database yang di-host di cloud yang berbasis NoSQL database. NoSQL database adalah database yang tidak menggunakan sistem relasi layaknya pada database tradisional (MySQL dll.). Metode penyimpanan data di dalam NoSQL menggunakan objek yang menggunakan format JSON (JavaScript Object Notation). Data disimpan sebagai JSON dan disinkronkan secara realtime ke setiap klien yang
terhubung. Ketika Anda membuat aplikasi lintas-platform dengan SDK Android, iOS, dan JavaScript, semua klien akan berbagi sebuah instance Realtime Database dan menerima update data terbaru secara otomatis. Show
Lalu Apa Saja Kelebihan Firebase?
Sebagai ganti permintaan HTTP biasa, Firebase Realtime Database menggunakan sinkronisasi data—setiap kali data berubah, semua perangkat yang terhubung akan menerima update dalam waktu milidetik. Memberikan pengalaman yang kolaboratif dan imersif tanpa perlu memikirkan kode jaringan.
Aplikasi Firebase tetap responsif bahkan saat offline karena SDK Firebase Realtime Database menyimpan data ke disk. Setelah konektivitas pulih, perangkat klien akan menerima setiap perubahan yang terlewat dan melakukan sinkronisasi dengan status server saat ini.
Firebase Realtime Database dapat diakses secara langsung dari perangkat seluler atau browser web; server aplikasi tidak diperlukan. Keamanan dan validasi data dapat diakses melalui Aturan Keamanan Firebase Realtime Database yang merupakan kumpulan aturan berbasis ekspresi dan dijalankan ketika data dibaca atau ditulis.
Dengan Firebase Realtime Database pada paket harga Blaze, Anda dapat mendukung kebutuhan data aplikasi Anda pada skala tertentu dengan membagi data Anda di beberapa instance database di project Firebase yang sama. Menyederhanakan autentikasi dengan Firebase Authentication pada project Anda dan mengautentikasi pengguna di instance database Anda. Mengontrol akses ke data di tiap database dengan Aturan Firebase Realtime Database khusus untuk tiap instance database. Firebase Realtime Database memungkinkan Anda untuk membuat aplikasi kolaboratif dan kaya fitur dengan menyediakan akses yang aman ke database, langsung dari kode sisi klien. Data disimpan di drive lokal. Bahkan saat offline sekalipun, peristiwa realtime terus berlangsung, sehingga pengguna akhir akan merasakan pengalaman yang responsif. Ketika koneksi perangkat pulih kembali, Realtime Database akan menyinkronkan perubahan data lokal dengan update jarak jauh yang terjadi selama klien offline, sehingga setiap perbedaan akan otomatis digabungkan. Realtime Database menyediakan bahasa aturan berbasis ekspresi yang fleksibel, atau disebut juga Aturan Keamanan Firebase Realtime Database, untuk menentukan metode strukturisasi data dan kapan data dapat dibaca atau ditulis. Ketika diintegrasikan dengan Firebase Authentication, developer dapat menentukan siapa yang memiliki akses ke data tertentu dan bagaimana mereka dapat mengaksesnya. Realtime Database adalah database NoSQL, sehingga memiliki pengoptimalan dan fungsionalitas yang berbeda dengan database terkait. API Realtime Database dirancang agar hanya mengizinkan operasi yang dapat dijalankan dengan cepat. Hal ini memungkinkan Anda untuk membangun pengalaman realtime yang luar biasa dan dapat melayani jutaan pengguna tanpa mengorbankan kemampuan respons. Oleh karena itu, perlu dipikirkan bagaimana pengguna mengakses data, kemudian buat struktur data sesuai dengan kebutuhan tersebut. Referensi: https://firebase.google.com/docs/database?hl=id By: Dyan Ahadiansyah – Engineering Laboratory Asisstant (Penerima Beasiswa Sarjana Muamalat 2019) Tugas Pembinaan Beasiswa Sarjana Muamalat Source: https://www.youtube.com/watch?v=peQ9ATXwPwg Firebase adalah Cloud Service Provider dan Backend as a Service yang dimiliki oleh Google. Firebase merupakan solusi yang ditawarkan oleh Google untuk mempermudah dalam pengembangan aplikasi mobile maupun web. Kita tidak perlu membangun fitur-fitur yang dibuat pada backend dan infrastruktur dari awal sehingga kita dapat fokus untuk mengembangkan aplikasi yang berkualitas tinggi tanpa perlu mengeluarkan effort yang besar. Firebase memiliki banyak SDK yang memungkinkan untuk mengintegrasi-kan layanan ini dengan Android, iOS, Javascript, C++ hingga Unity. Fitur-fitur di FirebaseRealtime DatabaseSalah satu fitur yang menarik di Firebase adalah Realtime Database. Firebase Realtime Database adalah sebuah Cloud-Hosted database yang dapat menyimpan dan melakukan sinkronisasi data secara realtime untuk setiap client yang terhubung. Setiap kali pengguna memperbarui data, itu akan menyimpannya pada cloud dan sekaligus memberitahu ke semua client yang terhubung dan secara otomatis menerima pembaruan dengan data terbaru. Firebase Realtime Database juga dilengkapi dengan fitur yang mendukung offline mode. Saat melakukan perubahan data pada saat offline mode atau tidak terdapat koneksi ke server, perubahan tersebut disimpan di lokal terlebih dahulu. Ketika device kembali online maka Firebase akan melakukan sinkronisasi terhadap perubahan data lokal dengan pembaruan jarak jauh yang terjadi saat client offline, dengan menggabungkan perbedaan apapun secara otomatis. Struktur DataRealtime Database merupakan sebuah NoSQL database sehingga memiliki fungsi dan optimasi yang berbeda dibanding dengan relational database. Pada Realtime Database, data disimpan sebagai JSON objects, sehingga struktur data yang disimpan pada database ini berupa JSON tree. Tidak seperti SQL database yang terdapat table-table atau records. Ketika data ditambahkan ke JSON tree, itu akan menjadi sebuah node di dalam struktur JSON yang ada dengan sebuah associated
key. Associated key dapat berupa user id, semantic names, atau dapat dibuat secara otomatis dengan Contoh sederhana dari struktur JSON tree. { Pada tulisan ini kita akan membuat aplikasi sederhana bernama Noteq dengan menggunakan Firebase Realtime Database untuk penyimpanan datanya. Mari kita memulainya. Setup Firebase Realtime Database untuk AndroidBuat baru Proyek Android seperti biasa, setelah itu buat baru Proyek Firebase untuk ditambahkan ke Proyek Android. Terdapat dua cara untuk menambahkan Firebase ke Proyek Android, yaitu dengan menggunakan Firebase Assistant atau menambahkannya secara manual. Untuk langkah-langkah menambahkan Firebase ke Proyek Android silahkan membacanya pada tulisan ini Install Dependency Realtime DatabaseSetelah selesai, tambahkan dependency untuk Firebase Realtime Database ke build.gradle yang terdapat pada folder /app. compile 'com.google.firebase:firebase-database:10.2.0' maka isi dari build.gradle akan seperti ini: apply plugin: 'com.android.application'android { Lalu klik Sync Now pada notif di Android Studio untuk menginstallnya ke Proyek Android. Konfigurasi Realtime Database RulesFirebase Realtime Database menyediakan sebuah declarative rules language yang dapat digunakan salah satunya untuk akses read dan write ke database. Secara default, read dan write ke database dibatasi hanya pengguna yang telah ter-autentikasi yang dapat read atau write data. Pada tulisan ini kita akan mengkonfigurasikan rulesnya untuk dapat diakses oleh publik. Masuk ke Proyek Firebase yang telah dibuat sebelumnya pada Firebase Console, klik Database lalu pilih tab Aturan. Masukkan aturan dibawah ini pada form yang ada. { Setelah menyimpannya akan muncul alert, untuk sekarang abaikan saja alert tersebut. PrologSedikit penjelasan dasar dalam menggunakan Realtime Database pada Android. Untuk membaca dan menulis data, kita membutuhkan sebuah instance dari private DatabaseReference mDatabase; Untuk menulis data, kita dapat menggunakan
Untuk membaca maupun menerima perubahan data, kita dapat menambahkan Implementasi Realtime DatabaseSetelah kita menyelesaikan setup Firebase Realtime Database untuk Android dan mengetahui dasar-dasar menggunakannya, saatnya kita mulai mencoba untuk mengimplementasikannya di Android. Pada tulisan ini dari sisi coding kita hanya akan membahas cara implementasi Realtime Database pada Android, untuk lebih lengkap kamu bisa melihatnya pada source code dibawah ini. Seperti penjelasan sebelumnya, kita membutuhkan sebuah instance dari private DatabaseReference mNoteRef; Custom Java ObjectBuat Class Note untuk digunakan sebagai custom Java Object, object tersebut akan disimpan ke reference pada Realtime Database. Class ini juga digunakan sebagai data layer untuk ditampilkan ke antarmuka. Custom Java ObjectMenambahkan DataUntuk menambahkan data ke database, masukkan object dari Class Note yang telah dibuat sebelumnya sebagai parameter ke method Kita dapat men-generate key menggunakan Menampilkan List DataUntuk menampilkan list data kita gunakan Pada event callback Untuk mengetestnya, kita akan melakukan perubahan data secara langsung dari Firebase Console. Firebase Realtime Database DemoPada gambar diatas terlihat kemampuan realtime dari Firebase Realtime Database. Pembaruan data dari database otomatis akan diterima oleh client yang terhubung untuk ditampilkan ke antarmuka. KesimpulanRealtime Database merupakan salah satu fitur canggih dari Firebase. Dengan SDK yang dimilikinya, kita dapat dengan mudah membangun aplikasi realtime hanya dengan sedikit code tanpa harus membuat web socket dan lain-lain dari awal. Cara penggunaannya juga tidak sulit, struktur data yang dimiliki mirip dengan database NoSQL. Pada SDK-nya terdapat Event Listener yang berguna untuk menerima perubahan data dari database, hal ini yang membuat aplikasi kita menjadi responsive terhadap perubahan data. Pada tulisan ini kita tidak membahas mengenai kemampuan Realtime Database untuk offline mode, kamu bisa mempelajarinya dengan membaca dokumentasinya disini. Dengan Firebase Realtime Database kita dapat menggunakannya untuk membangun aplikasi realtime seperti aplikasi chat hingga Realtime Dashboard. Referensi
Jelaskan apa yang dimaksud dengan Firebase Realtime Database?Realtime Database adalah database asli yang di-host langsung oleh Firebase. Data ini disimpan ke dalam bentuk JSON dan disinkronkan antar pengguna secara realtime. Sinkronisasi ini sendiri bisa dilakukan secara offline maupun online dan berlaku untuk Android maupun iOS.
Mengapa Firebase Realtime Database tetap responsif bahkan saat offline?Aplikasi Firebase tetap responsif bahkan saat offline karena Firebase Realtime Database SDK mempertahankan data Anda di disk. Setelah konektivitas pulih, perangkat klien akan menerima setiap perubahan yang terlewat dan melakukan sinkronisasi dengan status server saat ini.
Apakah Firebase termasuk backend?Firebase authentication merupakan layanan back-end, fitur iOS dan Android, SDK, yang mudah penggunaannya. Tampilan antarmuka firebase authentication juga sudah siap pakai untuk melakukan autentikasi kepada pengguna aplikasi yang dibuat oleh pengembang.
Jelaskan apa saja kelebihan menggunakan database Firebase?Manfaat utama
Firebase memiliki API intuitif yang dikemas dalam 1 SDK, sehingga dapat membantu Anda mengembangkan aplikasi berkualitas tinggi dengan cepat. Firebase juga menyediakan banyak fitur yang dapat digunakan untuk memperluas basis pengguna dan menghasilkan lebih banyak uang.
|