Skip to main content

Sekilas MongoDB


MongoDB adalah database dokumen opensoure dan memimpin database NoSQL. MongoDB ditulis dalam bahasa C ++. MongoDB dapat membuat dan mendeploy database yang sangat skalabel dan berorientasi kinerja. Sebelum mempelajari lebih jauh tentang MongoDb setidaknya sudah memahami cara menggunakan code editor seperti atom, visualstudio code, sublime dan sebagainya. Selain itu juga harus memahami konsep dasar dari RDBMS.

MongoDB bersifat cross-platform, database berorientasi dokumen yang menyediakan kinerja tinggi, ketersediaan tinggi, dan skalabilitas yang mudah. MongoDB bekerja pada konsep koleksi dan dokumen.


Database

Database adalah wadah fisik untuk koleksi (collections) dalam mysql kita kenal dengan table. Setiap database mendapatkan kumpulan file sendiri di sistem file. Satu server MongoDB biasanya memiliki banyak database.

Koleksi
Koleksi adalah sekelompok dokumen MongoDB. Ini mirip dengan tabel RDBMS pada mysql. Koleksi ada dalam satu database. Koleksi tidak menegakkan skema. Dokumen dalam koleksi dapat memiliki bidang berbeda. Biasanya, semua dokumen dalam koleksi memiliki tujuan yang serupa atau terkait.


Dokumen

Dokumen adalah sekumpulan pasangan nilai kunci. Dokumen memiliki skema yang dinamis. Skema dinamis berarti bahwa dokumen dalam koleksi yang sama tidak perlu memiliki kumpulan bidang atau struktur yang sama, dan bidang umum dalam dokumen koleksi dapat menyimpan berbagai jenis data. Nah jika pada mysql pada suatu tabel harus sesuai dengan field yang sudah kita atur sebelumnya atau sesuai tipe datanya, pada mongodb dokumen kita bisa bebas. Misalkan pada document siswa pertama kita input nim, nama, alamat. Selanjutnya kita bebas menginput kembali dengan nik, nama, jenis_kelamin dan umur.

Perbedaan RDBMS dan MongoDB

RDBMSMongoDB
DatabaseDatabase
TableCollection
Tuple/RowDocument
columnField
Table JoinEmbedded Documents
Primary KeyPrimary Key (Default key _id provided by mongodb itself)
Database Server and Client
Mysqld/Oraclemongod
mysql/sqlplusmongo
Contoh Dokumen
Contoh berikut menunjukkan struktur dokumen dari situs blog, yang hanya merupakan pasangan nilai kunci yang dipisahkan koma.


_id adalah angka heksadesimal 12 bit yang menjamin keunikan setiap dokumen. Anda dapat memberikan _id saat memasukkan dokumen. Jika Anda tidak memberikannya, MongoDB akan memberikan id unik secara otomatis untuk setiap dokumen. Ini 12 byte pertama 4 byte untuk timestamp saat ini, selanjutnya 3 byte untuk id mesin, 2 byte berikutnya untuk id proses server MongoDB dan sisa 3 byte merupakan nilai tambahan yang sederhana.

Kelebihan MongoDB dibandingkan dengan RDBMS

Setiap database relasional memiliki desain skema khas yang menunjukkan jumlah tabel dan hubungan antara tabel-tabel ini. Sementara di MongoDB, tidak ada konsep relasi.

  • Skema yang lebih ringkas - MongoDB adalah database dokumen di mana satu koleksi menyimpan dokumen berbeda. Jumlah bidang, konten, dan ukuran dokumen dapat berbeda dari satu dokumen ke dokumen lainnya.
  • Struktur satu objek jelas.
  • Tidak ada gabungan yang rumit.
  • Kemampuan kueri mendalam. MongoDB mendukung kueri dinamis pada dokumen menggunakan bahasa permintaan berbasis dokumen yang hampir sekuat SQL.
  • Tuning (sejumlah aktifitas yang dilakukan untuk memperbaiki atau meningkatkan kinerja atau performance sebuah database
  • Scale Out merupakan kemampuan sebuah sistem untuk ditambah (misal dari satu menjadi tiga unit node/mesin) agar beban kerja pemrosesannya dapat dibagi rata dan lebih optimal. - MongoDB mudah diukur.
  • Konversi / pemetaan objek aplikasi ke objek database tidak diperlukan.
  • Menggunakan memori internal untuk menyimpan set kerja (berjendela), memungkinkan akses data yang lebih cepat
Mengapa menggunakan MongoDB?

  • Penyimpanan Berorientasi Dokumen - Data disimpan dalam bentuk dokumen gaya JSON.
  • Indeks pada atribut apa pun
  • Replikasi dan ketersediaan tinggi
  • Sharding otomatis
  • Kueri kaya
  • Pembaruan cepat di tempat
  • Dukungan profesional oleh MongoDB
Di mana Menggunakan MongoDB?
  • Big Data
  • Content Management and Delivery
  • Mobile and Social Infrastructure
  • User Data Management
  • Data Hub
Note : Diambil dari berbagai sumber

Comments

Popular posts from this blog

CRUD Node Js MongoDb dengan Bootstrap studi kasus data mahasiswa Part 2

Sebelumnya kita sudah menginstall packages yang dibutuhkan. pada tahap ini kita akan membuat database mongodb. Langkah 1 : Masuk ke commad mongo dengan mengetikan pada terminal ubuntu anda "mongo" Langkah 2 : Buatlah sebuah database dengan nama "universitas" dengan mengetik "use universitas" Jika anda berhasil, maka anda akan menemukan informasi "switched to db universitas" Langkah 3 : Membuat field key unik untuk email "db.mahasiswa.createIndex({"email":1},{unique:true})" Langkah 4 : Menginputkan beberapa data pada collection "mahasiswa" "db.mahasiswa.insert({nim:"111",nama:"Ipung Purwono",email:"ipungofficial@hotmail.com",phone:"089812345678"})" "db.mahasiswa.insert({nim:"112",nama:"Joko Purwono",email:"jokoofficial@hotmail.com",phone:"089812345678"})" "db.mahasiswa.insert({nim:...

CRUD Node Js MongoDb dengan Bootstrap studi kasus data mahasiswa Part 3

Pada tutorial sebelumnya kita sudah membuat database mongodb dengan nama database "universitas" dengan collection adalah "mahasiswa" dengan isi "nim, nama, email, dan phone". Sekarang adalah mengkonfigurasi agar database dapat berinteraksi atau terkoneksi dengan nodejs app kita. Buka atom editor anda, atau bisa mengetikan pada terminal "atom" kemudian tambahkan project folder crudapps pada atom anda Nah anda sudah memiliki struktur folder aplikasi webapps tersebut. Sekarang anda membuat file config.js pada root folder (maksudnya adalah file tersebut berada pada folder crudapps) bukan didalam folder bin dan sebagainya. Anda juga bisa membuat file secara labgsung pada terminal dengan mengetikan "touch config.js" sehingga anda memiliki sebuah file baru dengan nama config.js. File config.js akan mendefinisikan url database berjalan dan port yang digunakan, nantinya file config.js tersebut akan di panggil di file app.js. B...

Installasi Node Js dan MongoDb

Tutorial NodeJs Mongo Db Indonesia : Sebelum memulai mempraktekan membuat aplikasi nodejs dan mognodb , kita harus melakukan installasi software yang dibutuhkan. Berbeda dengan ketika kita belajar php dan mysql ketika membuat sebuah website cukup menginstal xampp maka sudah terbundle dalam satu paket yaitu apache php, mysql sehingga mudah sekali digunakan. Karena disini saya menggunakan operating system Ubuntu (pada pembuatan artikel ini yaitu versi 17) maka tutorial akan lebih banyak menggunakan ubuntu , namun jangan khawatir karena code yang digunakan sama. Nah tools yang akan saya gunakan antara lain adalah sebagai berikut : Atom Editor nah, atom editor ini akan kita gunakan untuk mengedit code nodejs, dan mongodb ya, nah bisa kalian download di  https://atom.io/ NodeJs untuk nodejs ini sendiri bisa kalian download dan installasi di  https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions . Karena menggunakan curl anda harus terl...