Basis Data Berorientasi Dokumen

Salah satu topik hangat saat ini adalah NoSQL. NoSQL adalah basis data yang tidak menggunakan SQL. Bukan tidak menggunakan SQL karena adanya tambahan lapisan abstraksi seperti ORM (Object-Relational Mapping), tapi secara native memang tidak menggunakan SQL seperti yang umum kita temui pada basis data relasional. Pada tulisan ini, saya akan memberi dua buah contoh basis data berorientasi dokumen (document-oriented database). Jenis basis data ini sangat berbeda dengan basis data relasional yang banyak kita jumpai saat ini.

Saya mengambil dua contoh basis data berorientasi dokumen yang dibuat menggunakan Erlang, yaitu Apache CouchDB dan riak. Kedua basis data ini menggunakan Map/Reduce, RESTful HTTP, dan JSON. Tujuan umumnya pun sama, yaitu skalabilitas, terdistribusi, performa tinggi, dan fault-tolerant.

1. Apache CouchDB

CouchDB adalah salah satu produk dari The Apache Software Foundation. Bagi Anda yang ingin mengetahui lebih jauh tentang basis data ini, O’Reilly menyediakan versi gratis dari buku “CouchDB: The Difinitive Guide”.

Apache CouchDB

Apache CouchDB

2. riak

Baik CouchDB maupun riak sama-sama menggunakan RESTful HTTP dan JSON. Dari protokol yang digunakan, kita dapat menebak dengan mudah bahwa basis data tersebut sejatinya adalah sebuah web, bahkan riak secara terang-terangan menyebut dirinya sebagai document-oriented web database. Riak sangat terinspirasi oleh Amazon Dynamo, teorema CAP Eric Brewer, dan web secara general. Pada riak, data disimpan berdasarkan kombinasi key-value. Sebagai gambaran umum tentang riak, Anda dapat melihat presentasi dari event NYC NoSQL 5 Oktober 2009 oleh Bryan Fink.

riak MapReduce

riak MapReduce

Basis data di atas (basis data berorientasi dokumen) bukanlah pengganti basis data relasional. Basis data di atas sangat cocok bila digunakan untuk membangun sistem terdistribusi yang membutuhkan skalabilitas dan performa tinggi, seperti pada aplikasi web dengan jumlah data dan concurrency yang sangat besar.

1 komentar

  1. Really.. I got fuzzy …. belom ngerti data orientasi doc. mau buat apa.. jadi karna blm perlu yah… ya gtu deh

Tinggalkan komentar