Home Android Firebase Realtime Database dengan Android

Firebase Realtime Database dengan Android

0
Firebase Realtime Database dengan Android

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.

Image for post
fitur-fitur firebase

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 Data

Realtime 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 push().

Contoh sederhana dari struktur JSON tree.

{
"notes": {
"xxxxxx": {
"title": "What is Lorem Ipsum?",
"content": "Lorem Ipsum is simply dummy text of the print..."
},
"yyyyyy": {
"title": "Why do we use it?",
"content": "It is a long established fact that a reader ..."
},
"zzzzzzz": { ... }
}
}