commit to user 12
lebih fleksibel bila ada perubahan di masa mendatang. Adapun beberapa database NoSQL yang ada saat ini yaitu
Cassandra, Big Table, CouchDB, Redis, Riak, Dynamo
dan lainnya. Tentunya yang akan kita bahas di sini secara khusus adalah MongoDB. MongoDB merupakan database open source berbasis dokumen
Document-Oriented Database yang awalnya dibuat dengan bahasa C++. MongoDB sendiri sudah dikembangkan oleh 10gen sejak Oktober 2007, namun
baru dipublikasikan pada Februari 2009. Selain karena performanya 4 kali lebih cepat dibandingkan MySQL serta mudah diaplikasikan, karena telah tergabung
juga sebagai modul PHP. Dalam konsep MongoDB tidak ada yang namanya tabel, kolom ataupun
baris yang ada hanyalah collection ibaratnya tabel, document ibaratnya record. Data modelnya sendiri disebut BSON dengan struktur mirip dengan JSON.
. Dwight Merriman : 2009
2.4.4 Perbedaan MySQL dengan MongoDB
Pengembang dengan latar belakang bekerja dengan sistem database relasional akan cepat mengakui kesamaan antara abstraksi logis dari model data
relasional dan model data Mongo. Gambar berikut membandingkan komponen model data relasional dengan model data Mongo:
Gambar 2.1 komponen model data
Gambar berikut menunjukkan bagaimana satu baris dari sebuah table bernama hipotetis pengguna dipetakan ke dokumen dalam
collection
:
commit to user 13
Gambar 2.2 bentuk struktur data
Dengan konsep key-value yang ada pada MongoDB, setiap document otomatis memiliki index id yang unik. Hal ini membantu mempercepat proses
pencarian data secara global. Juga seperti kolom dari sebuah tabel RDBMS, field dari Collection dapat
diindeks, meskipun implementasi dari pengindeksan berbeda. Begitu banyak persamaan: sekarang mari kita bicara secara singkat tentang
perbedaan. Hal utama MongoDB yang membedakan dari model relasional adalah tidak adanya kendala hubungan. Tidak ada kunci asing dalam
collection
dan sebagai hasilnya ada tidak
JOIN queries
pembatas manajemen biasanya ditangani dalam lapisan aplikasi. Juga, karena skema yang fleksibel, tidak ada pernyataan
ALTER TABLE
di MongoDB. Rubayeet Islam : 2011
2.4.5 MongoDB concept
Collection MongoDB disebut juga pengelompokan dokumen atau kumpulan document BSON. Dapat dianggap seperti
table database relasional
. BSON singkatan dari Binary JSON, adalah serialisasi biner dikodekan
dari JSON-seperti dokumen. Seperti JSON, BSON mendukung embedding dokumen dan array dalam dokumen lain dan array. BSON juga mengandung
ekstensi yang memungkinkan representasi dari tipe data yang bukan bagian dari spec JSON. Sebagai contoh, BSON memiliki jenis Tanggal dan jenis BinData.
commit to user 14
_Id field hampir setiap
document
mongoDB memiliki sebagai atribut pertama. Jika ada user yang mencoba untuk memasukkan dokumen tanpa
menyediakan _id field, database secara otomatis akan menghasilkan id_ object dan menyimpannya. Rubayeet Islam : 2011
2.4.6 Kelebihan MongoDB