Saat data semakin besar, untuk mempertahankan performanya database relasional haus akan sumber daya (resources). Hal ini berakibat langsung ke membengkaknya cost/biaya operasional & infrastruktur yang dibutuhkan. Sehingga biasanya hanya perusahaan besar yang mampu untuk mempertahankan penggunaan database relasional saat datanya besar. Lebih jauh lagi, saat volume data membesar, format (struktur) data yang disimpan-pun semakin beragam (vary). Karena database relasional memiliki schema/struktur yang tetap (fixed), ia tidak lagi menjadi solusi yang feasible saat hal ini terjadi (minimal sangat menyulitkan). Teknologi NoSQL seperti MongoDB hadir untuk mengatasi permasalahan di Data dengan Volume (besar data), Velocity (laju pertumbuhan data), & variety (Format data) yang besar dan beragam. Terdapat banyak pilihan teknologi NoSQL yang dapat digunakan (read here), namun kali ini akan dibahas dasar penggunaan NoSQL MongoDB. MongoDB memiliki beberapa kelebihan khusus dibandingkan NoSQL lainnya. Beberapa diantaranya adalah Schemaless, Dynamic Query, “Auto Sharding”, Spatial support, Distributed, Performa yang baik, gratis-open source (AGPL 3), OOP friendly, dan masih banyak lagi.
Di catatan kecil kali ini saya akan membahas tentang pengenalan MongoDB untuk pemula. Saya awali dengan pendahuluan MongoDB, instalasi MongoDB & utility-nya, lalu sebuah contoh kasus yang akan digunakan sepanjang post ini, kemudian Query, indexing, dan juga tidak ketinggalan Driver MongoDB.
Pendahuluan MongoDB

Catatan: Primary key dengan menggunakan Auto Increment id seperti yang biasanya ada di database relasional tidak diperlukan di MongoDB. Setiap dokumen secara automatis akan memiliki field “_id” dan akan di index oleh MongoDB. _id digunakan MongoDB untuk meyakinkan bahwa setiap dokumen memiliki id yang unik. Format _id adalah BSon 12 byte: 4 byte (waktu epoch), 3 byte (machine id), 2 byte (process id), & 3 byte (counter). Contoh nilai _id : “5584aaca21cacd055a1b8fc1“. Walau _id bukanlah integer (auto increment), tidak usah hawatir mengakses dokumen dengan urutan tertentu, karena di MongoDB terdapat mekanisme “Natural Order”. Sehingga sebagaimana di database relasional kita bisa menggunakan Limit 50,100 di MongoDB kita juga bisa melakukan hal yang serupa.
You must log in to post a comment.