Kamis, 28 September 2017

ResumINaja || Mari Mengenal NoSQL Dengan Menggunakan MongoDB

* NoSQL 
                adalah sebuah konsep mengenai penyimpanan data non-relasional. Berbeda dengan model basis data relasional yang selama ini digunakan, NoSQL menggunakan beberapa metode yang berbeda-beda. Metode ini bergantung dari jenis database yang digunakan. Karena NoSQL sendiri merupakan konsep database, dan pada implementasinya, banyak jenis-jenis dari NoSQL ini.
NoSQL sangat berguna pada data-data yang terus-menerus berkembang, dimana  data tersebut sangat kompleks sehingga sebuah database relational tidak lagi bisa mengakomodir. Salah satu bentuknya adalah ketika suatu data saling berhubungan satu sama lain, maka akan muncul proses duplikasi data. Dimana data saling memanggil ke beberapa permintaan, tambahan data baru, perubahan data, dan lain-lain dengan key yang sama. Karena faktor hubungan antar data yang sama terjadi terus-menerus, mendorong faktor redudansi data, data menjadi berlipat-lipat, dan pada akhirnya akan menyebabkan crash pada database berkonsep RDBMS.
Harus ada cara lain untuk menanggulangi masalah ini,  dan NoSQL lah solusinya. NoSQL menyederhanakan proses yang terjadi dalam sistem basis data relasional. Dimana hal-hal yang menyebabkan redudansi, dihilangkan sehingga trafik server akan seimbang. Penyederhanaan proses ini memungkinkan data direplikasi di banyak server secara mudah dan menjamin ketersediaan data.
Contoh nyata penjelasan diatas bisa teman-teman lihat pada situs jejaring sosial, FACEBOOK.COM
  • Pernahkah berfikir sebesar apa server penyimpanan facebook dengan anggota ribuan orang tersebut ? 
  • Apabila teman-teman alim, mungkin tidak jadi masalah, tapi bagaimana jika ada yang narsis lalu sering upload foto setiap hari ?
  • Bagaimana kalau setengah dari member facebook adalah orang-orang yang narsis ?
  • Berapa besar ukuran yang dibutuhkan facebook pada servernya ?


Setelah mengerti apa itu NoSQL, Sekarang saatnya mengenal database NoSQL.
Dalam NoSQL, terdapat berbagai macam bentuk database dengan schema dan konsepnya sendiri. Sama halnya dengan database SQL yang seperti teman-teman kenal seperti MySQL, SQL Server, Oracle, PostgreSQL, dan lain-lain. Dalam NoSQL, terdapat MongoDB, CouchDB, Riak, dan lain-lain.


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. Strukturnya cukup mudah dibaca, contohnya seperti ini.
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.

Keunggulan Yang Dihadirkan Oleh MongoDB

MongoDB hadir dengan beberapa kelebihan yaitu :
  1. Performa yang ditawarkan MongoDB lebih cepat dibandingkan MySQL ini disebabkan oleh memcached dan format dokumennya yang berbentuk seperti JSON
  2. 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
  3. Auto-sharding, merupakan fitur untuk memecah database yang besar menjadi beberapa bagian demi optimalisasi performa database. Penggunaannya sendiri sangat berguna ketika Anda memiliki website dengan database yang jutaan baris, sharding akan membantu memecahnya menjadi beberapa bagian
  4. MongoDB juga sudah mendukung C, C++, C#, Erlang, Haskell, Java, JavaScript, .NET(C# F#, PowerShell), Lips, Perl, PHP, Python, Ruby dan Scala
  5. Cross-platform, sehingga dapat digunakan di Windows, Linux, OS X dan Solaris
  6. Proses CRUD (Create, Read, Update, Delete) terasa sangat ringan
  7. 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
  8. GridFS, spesifikasi yang digunakan untuk menyimpan data yang sangat besar

Cara Instal MongoDB Pada OS Windows

Dalam postingan ini saya menggunakan sistem operasi windows 10 64 bit untuk menginstall mongoDB versi 2.6.4. anda bisa mendapatkan file installer untuk sistem operasi widnwos pada webiste resmi mongodb.com. setelah selesai proses download silahkan double click pada file installer dan ikuti proses instalasi sebagai berikut :
step1-welcome-mongodbstep4-ready-to-install-mongo-db
silahkan klik Install untuk melanjutkan proses install MongoDB pada OS Windows
step1-setu-type-mongodb
Pilih custom untuk menentukan lokasi installasi mongoDB secara manual
step3-destination-folder
Silahkan pilih partisi C atau partisi lain yang akan menjadi lokasi kita melakukan instalasi MongoDB pada sistem operasi windows, selanjutnya buatlah sebuah folder baru dengan nama mongodb dan pilihlah folder ini sebagai tujuan instalasi seperti gamabr diatas, kemudian klik OK untuk melanjutkan instalasi mongoDB
step5-istall-mongodb
Silahkan Tunggu sejenak sampai proses instalasi mongoDB selesai, biasanya membutuhkan waktu sekitar 3 menit

step6-finish-install-mongodb
Klik finish untuk mengakhiri proses instalasi MongoDB, sampai pada tahap ini anda sudah berhasil melakukan proses instalasi mongoDB pada OS Windows.

Menjalankan Server Mogodb

Setelah tahap instalasi selesai maka kita akan mencoba menggunakan nya, langkah yang pertama harus anda lakukan adalah buka CMD kemudian masuk ke lokasi/ path mongoDB yang ada pad direktori C:\mongodb\bin dan mengaktifkan server mongoDB dengan cara :

jika berhasil maka akan muncul pesan waiting for connection seperti dibawah ini :mongod-listen

Membuat Service MongoDB

pertanyaan selanjutnya adalah apakah anda harus melakukan perintah menjalankan mongoDB secara manual setiap ingin digunakan ? tentunya tidak, kita bisa membuat sebuah service yang membantu kita dalam mengelola proses dari mongoDB itu sendiri, dan kita bisa mengatur service yang sudah dibuat agar dijalankan otomatis ketika komputer di gunakan melalui service manager. cara membuat service mongodb adalah sebagai berikut :
create service ketika install mongodb
lalu silahkan restart komputer/ PC anda setelah proses pembuatan service berhasil.

Management Service MongoDB Pada OS Windows

seperti layaknya service pada sistem operasi windows, kita juga bisa melakukan management service MogonDB baik melalui CMD ataupun Service Manager Windows. berikut ini adalah cara melakukan management service MongoDB melalui CMD pada sistem operasi Windows.
Merunning/ mengaktifkan service mongoDB
start-service-mongodb
Mengstop/ menghentikan service MongoDB

Merestart service MongoDB
sampai pada tahap ini anda sudah berhasil menginstall MongoDB pada sistem operasi windows, pada artikel selanjutnya kita akan belajar cara melakukan management database menggunakan MongoDB.


  • Verdian Darma Prakoso
  • 12410100054
  • STIKOM SURABAYA || Mata Kuliah Integrasi Data (Q1)