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

Postingan populer dari blog ini

Dampak Teknologi Terhadap Kemiskinan Penduduk Abad ke-21

Macam-Macam Software Desain Grafis dan Fungsinya

Perangkat lunak disain grafis yang diperlukan dalam memperindah tampilan aplikasi perangkat lunak bergerak