Pengertian MongoDB – database merupakan kumpulan data yang disimpan secara sistematis didalam komputer yang dapat diolah atau dimanipulasi menggunakan perangkat lunak (software) program atau aplikasi untuk menghasilkan informasi. MongoDB merupakan salah satu produk database NoSQL (Not only SQL) open source yang menggunakan struktur data JSON untuk menyimpan datanya.
MongoDB sangat populer di internet dengan slogannya “No database makes you more productive”. MongoDB sering dipakai untuk aplikasi berbasis Cloud, Grid Computing, dan Big data.
Apa itu MongoDB?
MongoDB adalah database terdistribusi dengan tujuan umum, berbasis dokumen, yang dibangun untuk pengembangan aplikasi modern dalam era cloud (awan). Seperti yang kita singgung sebelumnya, MongoDB merupakan salah satu jenis database NoSQL yang berbasis dokumen dengan format JSON.
Apabila pada RDBMS SQL lainnya data disimpan dalam bentuk tabel, maka pada MongoDB data disimpan dalam bentuk dokumen dengan format json. Selain itu, MongoDB tidak memiliki relasi atau non-relasional antar tabel. Beberapa contoh database dengan konsep NoSQL lain seperti, MongoDB, ArangoDB, Redis, Casandra, dan lain-lain.
Contoh data di MongoDB:
[code lang=”js”]
{
“_id” : ObjectId(“54c955492b7c8eb21818bd09”),
“alamat” : {
“street” : “Jl. Suramadu”,
“zipcode” : “68162”,
“building” : “1490”,
“coord” : [ -73.9557413, 40.7720266 ]
},
“borough” : “Jakarta”,
“cuisine” : “Indonesia”,
“grades” : [
{
“date” : ISODate(“2014-10-01T00:00:00Z”),
“grade” : “A”,
“score” : 11
},
{
“date” : ISODate(“2014-01-16T00:00:00Z”),
“grade” : “B”,
“score” : 17
}
],
“name” : “Loveria”,
“restaurant_id” : “42704620”
}
[/code]
MongoDB diciptakan oleh Dwight Merriman dan Eliot Horowitz, dua orang yang sangat berpengalaman dalam dunia basis data saat membangun aplikasi web bernama DoubleClick milik Google.
Nama MongoDB diambil dari kata humongous yang berarti gagasan yang mendukung sejumlah besar data. Dan terhitung sejak kali pertama didirikan, MongoDB telah digunakan oleh banyak badan dan perusahaan kelas dunia. Antara lain Craiglist, CERN (organisasi nuklir Eropa), hingga Koran terkenal The New York Times di New York, Amerika Serikat.
Cara Kerja MongoDB
Data yang disimpan didalam MongoDB berupa dokumen JSON. Dokumen tersebut merupakan struktur data yang terdiri dari pasangan (key) dan nilai (value). Bagian-bagian struktur dalam dokumen mirip dengan kolom dalam database relasional, dan nilai-nilai yang dikandungnya. Dapat berupa berbagai tipe data, termasuk dokumen lain, array, dan dokumen array.
Berdasarkan model penyimpanan datanya, Database NoSQL/MongoDB dikelompokkan menurut format penyimpanan dokumennya, yaitu:
- Document Database, yaitu setiap satu object data disimpan dalam satu dokumen. Dokument sendiri bisa terdiri dari key-value, dan value sendiri bisa berupa array atau key-value bertingkat.
- Graph, yaitu Format penyimpanan data dalam struktur graph. Format grap digunakan untuk data yang saling berhubungan seperti jejaring social. Contoh Neo4J dan FlockDB. FlockDB yang saat ini dipakai oleh twitter.
- Key-Value, merupakan struktur data yang terdiri dari pasangan (key) dan nilai (value). contoh lain database jenis ini adalah Apache Cassandra.
- Object Database, yaitu format database yang disimpan dalam objek. Object disini sama dengan pengertian objek di Pemrograman berorientasi objek.
Kelebihan menggunakan MongoDB
Berikut ini adalah beberapa manfaat atau kelebihan apabila anda menggunakan database MongoDB pada aplikasi anda. Penggunaannya pun sangat populer sehingga tidak sedikit yang telah mengenal apa itu MongoDB. MongoDB sendiri sudah sangat tidak asing pastinya di kalangan para developer karena keunggulannya.
1. Menampung banyak jenis data
MongoDB merupakan database NoSQL yang dapat digunakan menampung data yang terstruktur, semi terstruktur dan tidak terstuktur secara efesien dalam skala besar (big data/cloud). Menggunakan OOP dalam pengaksesan atau manipulasi datanya. NoSQL tidak mengenal schema tabel yang kaku dengan format data yang kaku. NoSQL sangat cocok untuk data yang tidak terstruktur, istilah singkat untuk fitur ini adalah Dynamic Schema.
2. Embedded document
Saat akan membuat tabel dalam MongoDB, tiap suatu kolom baris akan memiliki embedded document atau baris yang tertanam. Setiap barisnya bisa mempunyai kolom yang berbeda dari baris yang lain. Bahkan baris awal mampu memiliki 20 kolom, kemudian baris ke-100 hingga ke-1000 memungkinkan memilki 40 kolom. Jika dibandingkan dengan RDBMS, setiap kolom baris bersifat fixed atau sama antara satu dengan yang lainnya, Menggunakan MongoDB lebih menguntungkan sebab dalam MongoDB juga mampu dibuat seperti halnya tabel pada RDBMS.
3. Dapat bekerja secara otomatis dalam membuat struktur tabel
Pengguna juga tidak perlu lagi membuat tabel terstruktur, sebab MongoDB akan bekerja otomatis untuk membuat struktur tabel ketika proses insert. Suatu collections atau istilah table di MongoDB, mampu membuat masing dokumen mempunyai kolom yang sama yakni saat pembuatan collection, parameter capped dibuat menjadi true.
4. Menggunakan javascript, sehingga mudah dipahami
Penggunaan bahasa pada Query MongoDB tidak seperti yang digunakan dalam SQL, Akan tetapi memanfaatkan Javascript. Sehingga penggunan bisa membuat sebuah stored procedure dengan Javascript tersebut. Kemudian pada saat membuat sebuah dokumen baru, secara default atau otomatis akan membuat id dokumen. Sehingga akan memudahkan penggunak yang membutuhkan id tanpa harus membuat sendiri.
5. Skalabilitas
Kelebihan utama MongoDB adalah skalabilitas horizontalnya yang menjadikannya basis data yang berguna bagi perusahaan yang menjalankan program big data. Selain itu, adanya sharding memungkinkan database untuk mendistribusikan data melalui seperangkat mesin. MongoDB versi yang paling baru juga mendukung pembuatan zona data berdasarkan shard key.
6. Tidak memerlukan Skema
MongoDB tidak memerlukan skema yang telah ditentukan dan menyimpan semua bentuk data. Hal ini memberikan pengguna fleksibilitas untuk membuat sejumlah bidang dalam dokumen, membuatnya lebih mudah dan membuat skala database MongoDB dibandingkan dengan database relasional.
Kesimpulan
MongoDB adalah database terdistribusi dengan tujuan umum, berbasis dokumen, yang dibangun untuk pengembangan aplikasi modern dalam era cloud (awan). MongoDB merupakan salah satu jenis database NoSQL yang berbasis dokumen dengan format JSON. Itulah beberapa penjelasan tentang pengertian, cara kerja, dan kelebihan dari database MongoDB yang dapat caraguna share pada kesempatan kali ini. Jika ada yang ingin ditanyakan atau ada yang ingin disampaikan, silahkan komen pada kolom komentar dibawah, terimakasih.