Apa itu MongoDB?
MongoDB merupakan sebuah database yang
memiliki konsep NoSQL. lstilah ini dapat diartikan secara awam dengan non
relasional karena berbeda dengan MySQL yang merupakan RDBMS (relational
database management system). MongoDB adalah salah satu jenis database
NoSQL yang berbasis dokumen dengan fomat JSON. Pada database SQL, data disimpan
dalam bentuk tabel. Sedangkan pada MongoDB data disimpan dalam bentuk dokumen
dengan format JSON.
Sistem database ini menggunakan beberapa komponen penting,
yaitu :
1.Database, merupakan wadah dengan
struktur penyimpanan yang disebut collection.
2.Collection, merupakan tempat
kumpulan informasi data yang berbentuk dokumen.
3.Document, merupakan satuan unit
terkecil pada MongoDB.
lstilah table di
MongoDB dinamakan collections. lstilah rows di MongoDB
dinamakan documents. Setiap documents dapat berisi kolom yang
berbeda dengan documents lainnya.
MongoDB menawarkan fitur high
performance, high availability,dan automatic scaling. MongoDB menggunakan
Javascript untuk melakukan operasi seperti CRUD, agregasi, indexing, dan
operasi database lainnya, karena MongoDB menggunakan javascript
maka dalam penyimpanan datanya MongoDB tidak menggunakan table, tetapi MongoDB
menyimpan datanya dalam suatu dokumen yang strukturnya seperti JSON. MongoDB
merupakan database open source berbasis dokumen (Document Oriented Database)
yang awalnya dibuat dengan bahasa C++.
MongoDB sendiri sudah
dikembangkan 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. Strukturnya
cukup mudah dibaca.
Contoh MongoDB
Perbedaan Sintaks MySQL dan NoSQL
Keunggulan MongoDB :
- 1. Performa Lebih Cepat. MongoDB menawarkan performa database yang lebih cepat dibanding database jenis SQL. Sebab, database ini menggunakan dokumen dengan format JSON yang lebih ringan. Tak hanya itu, database ini juga didukung oleh Memcached yang mampu menyimpan data dalam skala memori besar.
- 2. Pengelolaan Database Lebih Mudah. MongoDB tidak memerlukan struktur tabel yang akan semakin rumit seiring bertambahnya data. MongoDB akan secara otomatis membuat struktur tabel ketika Anda menginput data.
- 3. Mampu Menampung Banyak Data yang Bervariasi. MongoDB mampu menampung lebih banyak data kompleks karena menggunakan schema table yang dinamis (dynamic schema). Dengan skema data tersebut, database ini bisa menyimpan data yang lebih bervariasi, mulai dari data terstruktur hingga tidak terstruktur.
- 4. Bisa Mengelola Query Lebih Baik. MongoDB adalah database yang memiliki kemampuan untuk menangani query dengan baik. Selain itu, akses terhadap data juga mudah dilakukan sehingga Anda dapat melihat hasil suatu data yang rumit atau tak terstruktur dengan cepat.
- 5. Dapat Memperbarui Skema Data Tanpa Downtime. MongoDB didesain untuk bisa tetap diakses ketika pembaharuan skema dan struktur data dilakukan. Jadi, akan lebih kecil gangguan pada aplikasi atau website selama proses pembaruan skema data.
- 6. Bisa Digunakan Secara Gratis. MongoDB adalah software sistem database yang bisa Anda gunakan gratis, baik untuk pengguna Windows, Linux atau macOS.
Kekurangan MongoDB :
- 1. Belum banyak hosting yang support.
- 2. Fleksibilitas dalam query (sebagai contoh tidak adanya JOIN)
Fitur MongoDB :
- MongoDB juga sudah mendukung C, C++, C#, Erlang, Haskell, Java, JavaScript,.NET(C# F#, PowerShell), Lips, Perl, PHP,Python, Ruby dan Scala.
- Cross-platform, sehingga dapat digunakan di Windows, Linux, OS X dan Solaris.
- Map/Reduce, akan sangat membantu ketika kita melakukan operasi agregasi. Dimana semua entry datangnya dari collection dan outputnya pun akan menjadi collection juga. Kalau di MySQL biasanya kita menggunakan query GROUP BY.
- Replikasi,adalah fitur yang sangat bermanfaat untuk backup data secara realtime. MongoDB sangat cocok digunakan untuk portal berita ataupun blog,namun belum cocok untuk digunakan pada sistem informasi yang berkaitan dengan keuangan karena MongoDB tidak mendukung transaction SQL
- Auto-sharding, merupakan fitur untuk memecah database yang besar menjadi beberapa bagian demi optimalisasi performa database. Penggunaannya sendiri sangat berguna ketika memiliki website dengan database yang memiliki jutaan baris, sharding akan membantu memecahnya menjadi beberapa bagian.
Komentar
Posting Komentar