Kita akan menggunakan robo 3t untuk belajar tentang mongodb.
Robo 3t adalah mongodb tools yang berbasis GUI (grafik user interface). Pengertian dari GUI adalah antar muka yang berbasis grafis. Oleh karena itu user tidak perlu mengetikan perintah melalui command prompt atau shell untuk menjalankan sesuatu dalam komputer, karena semua sudah tersedia dalam bentuk gambar.
Sebelumnya kita telah menginstalasi mongodb pada komputer dengan OS windows 7.
Dalam menjalankan mongodb apabila menggunakan cara yang manual seperti tutorial sebelumnya tentu akan sangat merepotkan. Pasalnya jika kita mematikan komputer kita, maka kita harus mengetikan perintah tersebut untuk menjalankan monggodb.
Oleh karena itu kita perlu membuat services pada komputer anda agar anda tidak perlu repot lagi mengetikan perintah yang sama untuk menjalankan mongodb pada lokal komputer anda.
Step 1 – Patching MongoDB
Membuka Control Panel > System and Security > System. Lalu anda pilih Advanced System Setting
Pada tab Advanced anda klik envirotment variable
pilih path pada sistem variable, kemudian klik tombol edit
Pada akhir path di tambahkan titik koma sebagai pemisah path. Kemudian anda tambahkan path direktori tempat anda menginstal mongodb. pada tutorial sebelumnya kita menginstal pada direktori C:\ maka kita cukup menambahkan C:\MongoDB\bin. Anda harus hati-hati dalam penambahan variable path jangan sampai ada variable yang terhapus atau lupa menambhakan titik komanya.
Kemudian klik ok untuk menyelesaikan penambahan path
Selanjutnya anda dapat membuka command promp (cmd) dan mengetikan perintah mongo -version. Maka akan muncul versi dari mongo yang sudah kita instal, dan dengan demikian maka anda telah berhasil melakukan patch pada komputer anda.
Step 2 – Membuat File Configuration
membuat direktori bernama log pada C:\data. Dan membuat file yang bernama mongod.cfg
kemudian anda mengetikan perintah berikut ini pada file mongod.cfg. kemudian save.
Setelah itu anda jalankan command promp (cmd) sebagai administrator dengan cara klik kanan > pilih run as administrator
anda dapat mengetikan perintah sebagai berikut
mongod --config C:\data\mongod.cfg –install
Anda dapat membuka services system dengan cara klik Control Panel > All Control Panel Items > Administrative Tools > services. Maka disana akan ada lokal servis yang benama MongoDB Server. dan sampai disini anda telah berhasil menginstal MongoDB services
Step 3 – Menjalankan Services
Untuk menjalankan services anda perlu membuka command promp (cmd) sebagai administrator. dan mengetikan perintah net start MongoDB
Services berhasil dijalankan dan jika anda masuk ke system service maka status MongoDB menjadi started
Step 3 – Perintah Untuk Menghetikan services
Untuk menghentikan services anda dapat melakukan dengan cara membuka command prompt sebagai administrator dan kemudian mengetikan perintah sebagai berikut
Kita memerlukan satu tools lagi untuk mempermudah kita dalam mempelajari mongodb. tools yang akan kita install adalah robo 3T.
Sebelum memulai tutorial selanjut hal yang harus dipersiapkan adalah tools untuk membantu proses pembelajaran kita. Adapun tools tersebut adalah instalasi mongoDB dan kita akan menggunakan robo 3T.
Pada artikel sebelumnya kita telah membahas database noSQL dan jenis-jenisnya. saya ingin menyegarkan kembali ingatan anda tentang database noSQL dengan model document singkatnya database model ini direpresentasikan dalam bentuk objek document dengan penulisan format Json.
Hubungannya dengan mongoDB adalah bahwa database mongoDB menganut konsep Document database, dan dalam pembuatannya mongoDB ditulis dengan menggunakan bahasa pemograman C++.
Jika anda terbiasa dengan database SQL yang berupa tabel saling berelasi mungkin sedikit mengalami kesulitan untuk beradaptasi dengan MongoDB. Karena saya mengalami hal serupa saya memerlukan waktu untuk membiasakan diri menggukan database model document. Disamping itu pula saya menganggap standart database relational lebih mudah untuk menetapkan aturan dan kiteria yang kita perlukan. Dan cukup memperhatikan normalisasi pada database agar tidak terjadi redudansi data (duplikasi data).
Namun setiap teknologi yang ada akan membawa plus-minus nya masing-masing. Penggunaan database SQl / relational database cenderung kaku dan tidak flexible, Jauh berbeda dengan model database document yang memberikan flexibelitas yang tinggi dalam pengelolaan data karena penyimpanan dan pemanipulasiannya terjadi dalam objek.
Perhatikan gambar dibawah ini untuk mengingatkan kembali ingatan anda kembali tentang pembahasa kita tentang database document dan flexiblelitas penggelolaan data dalam sebuah objek.
contoh penulisan objek dokumen dengan format penulisan Json.
Document dan Koleksi pada MongoDB
Kita akan membuat suatu analogi agar tidak bingung untuk memahami document dan koleksi pada MongoDB. Karena MongoDB menggunakan konsep model document. Jadi kumpulan beberapa document dalam satu file yang sama dapat dianalogikan layaknya table pada database SQL / relational database. Sedangkan Document sendiri dapat dinyatakan seperti record. Properti dalam objek dapat dinyatakan seperti kolom dan terakhir adalah setiap properti memiliki value mereka masing-masing.
contoh analogi document pada MongoDB
JSON (Javascript Object Notation)
Json merupakan representasi dari database model document jadi kita akan membahas bagaimana cara penulisan data dengan format json. Atau anda dapat menuju link di bawah ini untuk membaca langsung pada dokumentasi dari Json.
mengapa dinamakan Json? apakah Json adalah Javascript?
mari kita jawab satu persatu, dinamakan JSon karena format penulisannya mengadopsi penulisan data object pada javascript sehingga format ini di namakan notasi objek javascript, bagi anda yang sudah familiar dengan bahasa objek javascript pasti tidak akan mengalami kebingungan lagi untuk memahaminya.
Pertanyaan yang kedua. Sama sekali Json bukan bagian dari javascript! Json merupakan format penulisan yang mandiri dan dapat berdiri sendiri karena dengan hadirnya Json ini dapat menjadi jembatan dari sekian banyak bahasa pemograman untuk saling berkomunikasi karena hampir semua bahasa pemograman modern mendukung format penulisan data json.
Struktur penulisan json terbagi menjadi dua yaitu:
1. StrukturBerupa objek yaitu penulisannya di awali dengan tanda buka kurung kurawal dan di akhiri oleh tutup kurawal, dimana setiap value diikat oleh properti/atribut. dan setiap objek atau properti dipisahkan dengan koma (,)
Sama seperti penulisan array pada umumnya yang diawali dengan kurung buka siku [ dan diakhiri dengan kurung tutup siku ]. Menurut saya array adalah cara yang baik untuk mengelolah data. Semoga kedepannya saya bisa menulis tutorial kusus mengenai hal ini.
untuk penggambarannya dapat di lihat gambar berikut ini.
value dalam array dapat berupa objek, karena kebiasaan saya dalam membuat aplikasi dengan format Json meletakan data kedalam array.
Sedangkan value pada Json dapat berupa objek, array, number, string, boolean dan Null. Untuk objek dan array dapat juga berupa nested object (objek bersarang) atau nested array (array bersarang).
Dokumen-dokumen yang disimpan dalam sebuah disk (hdd, ssd atau sebuah server) akan di tulis dengan format binary json. Untuk anda yang masih belum familiar dengan Bson anda dapat mengunjungi link berikut ini
Format biner Bson memiliki fitur yang ringan dibandingkan dengan format biner yang lainnya, karena bson memiliki karakteristik ligthwight (ringan) ini menjadi hal penting melakukan transformasi data ke sebuah web. Selain itu Bson memiliki karakteristik Traversal (mudah dilalui) dan yang terakhir adalah karakteristik bson yang Efecient (efesien) yang menjadikannya memilki peforma yang sangat cepat dan mudah dinavigasi saat encode dan decode data.
berikut ini adalah beberapa tipe dari data yang di representasikan dalam format Bson:
String UTF-8 (string)
Integer 32-bit (int32)
Integer 64-bit (int64)
Floating point / bilangan pecahan (double)
Document (document)
Array (document)
Binary data (binary)
Boolean false (\x00 or byte 0000 0000)
Boolean true (\x01 or byte 0000 0001)
Null value ()
Regular expression (cstring)
JavaScript code (string)
JavaScript code w/scope (code_w_s)
• ObjectId (byte*12)
Kesimpulan
Dari penjelasan di atas kita akan menarik kesimpulan mengapa kita perlu mempelajari mongoDB guna membangun aplikasi yang moderen.
MongoDB menganut model document database ini yang menjadikan mongoDB dalam mengelolah data menjadi lebih flexible berdasarkan kebutuhan dari aplikasi
MongoDB menggunakan format penulisan Json yang mana hampir semua bahasa pemogramanan moderen mendukung penuh format pernulisan ini.
MongoDB menggunakan format penyimpanan data dalam sebuah disk dalam bentuk BSON (Binary Json) yang memiliki karakterisktik, ligthweight (ringan), traversable (mudah dilalui) dan efecient (efesien).
Sewaktu masih menjadi mahasiswa saya mendapatkan materi Database. Database yang kami pelajari adalah SQL yakni database dengan konsep struktural berupa table yang saling berelasi, dan kami selalu menggunakan SQL untuk urusan pengelolaan data dalam pengembangan suatu aplikasi, terutama dengan DBMS (database management system) MySQL.