BICARA TENTANG NOSQL

Tantangan Menulis Hari ke-155

Oleh: Bernardus Ari Kuncoro

NoSQL merupakan singkatan dari Not Only Structured Query Language. Database NoSQL menyediakan mekanisme untuk penyimpanan dan pengambilan data yang dimodelkan dengan cara yang berbeda dari relasi tabular yang digunakan pada relational databases. Istilah NoSQL mulai digunakan sejak 1970, tetapi baru naik daun pada 2000-an.

Bermacam-macam variasi No-SQL mulai dari Document store, graph, key-value, dan wide-column.

Ada banyak variasi NoSQL. Apa saja?

  1. Apache Cassandra (Partition Row store). Data didistribusikan berdasarkan partisi ke dalam beberapa node atau server. Diatur dalam format kolom dan baris.
  2. MongoDB (Document store). Merupakan database berorientasi dokumen. Selain adanya Key Lookups yang dilakukan oleh key-value store, database ini juga menawarkan API atau query language yang akan mengeluarkan dokumen berdasarkan apa yang ada di dalam database. Bayangkan Anda memaknai proses ini sebagai pencarian dari kumpulan dokumen-dokumen.
  3. DynamoDB (Key-value store). Database yang terkumpul berdasarkan pasangan-pasangan antara key dan value.
  4. Apache HBase (Wide Column Store). Menariknya dari database ini selain kolomnya ‘melebar’ adalah nama kolom dari baris ke baris dapat berbeda-beda.
  5. Neo4J (Graph Database). Dalam database ini, data direpresentasikan oleh nodes dan edges.

Perlu diingat bahwa Anda tidak perlu menghafal semua variasi NoSQL di atas. Peruntukannya berbeda-beda tergantung kebutuhan. Anda dapat memulainya dengan Apache Cassandra, karena memiliki kedekatan dengan Relational Database. Mengingat bentuknya masih tabel. Selebihnya, tetap harus belajar untuk memahami masing-masing karakteristiknya, namun proses belajar jadi lebih mudah.

Sebagai pengayaan, Anda dapat merenungi gambar berikut.

Penggunaan NoSQL dan SQL yang bervariasi

Disadur dan diterjemahkan dari Data Engineering Nanodegree by Udacity.

Kalideres, 2 Januari 2021

Leave a Reply

Your email address will not be published. Required fields are marked *