Cassandra atau lengkap APACHE CASSANDRA adalah salah satu produk open source untuk menajemen database yang didistribusikan oleh Apache yang sangat scalable (dapat diukur) dan dirancang untuk mengelola data terstruktur yang berkapasitas sangat besar (Big Data) yang tersebar di banyak server. Cassandra merupakan salah satu implementasi dari NoSQL (Not Only SQL) seperti mongoDB. NoSQL merupakan konsep penyimpanan database dinamis yang tidak terikat pada relasi-relasi tabel yang kaku seperti RDBMS. Selain lebih scalable, NoSQL juga memiliki performa pengaksesan yang lebih cepat. Hal-hal itulah yang membuat NoSQL menjadi semakin populer beberapa tahun belakangan ini.
oke kembali pada Cassandra, kemampuan Cassandra dalam menyimpan data dengan jumlah yang sangat besar tidak diragukan lagi, puluhan perusahaan besar telah mempercayakan Cassandra sebagai salah satu penunjang kerja mereka diantaranya:
Untuk memproses datanya, Cassandra menggunakan bahasa sendiri yang mirip dengan SQL yaitu Cassandra Query Language (CQL).
Sejarah Cassandra
- Cassandra dikembangkan di Facebook untuk pencarian kotak masuk.
- Itu open-source oleh Facebook pada bulan Juli 2008.
- Cassandra diterima menjadi Apache Incubator pada Maret 2009.
- Itu membuat proyek top-level Apache sejak Februari 2010.
Fitur
Sama dengan MongoDB atau pun konsep database berbasis NoSQL lainnya, Cassandra mengusung keunggulan keunggulan seperti
- Elastic Scalability, Karena konsepnya adalah database terdistribusi, penambahan kapasitas penyimpanan dapat ditambah sewaktu waktu dan tanpa terikat hardware dan lokasi yang sama, jadi bisa jadi data A di taruh di Indonesia , data lainnya di taruh di negara lain, dengan server yang berbeda baik hardware maupun platformnya.
- Penyimpanan data yang fleksibel , Cassandra mengakomodasi semua format data yang ada, termasuk: terstruktur, semi-terstruktur, dan tidak terstruktur. Secara dinamis dapat mengakomodasi perubahan struktur data anda sesuai dengan kebutuhan Anda.
- Distribusi data yang mudah ,Cassandra memberikan fleksibilitas untuk mendistribusikan data mana yang Anda butuhkan dengan mereplikasi data di beberapa pusat data.
- Menulis cepat ,Cassandra dirancang untuk berjalan pada perangkat keras low end. Ia melakukan menulis cepat dan dapat menyimpan ratusan terabyte data, tanpa mengorbankan efisiensi membacanya.
NoSQL vs Relational Database
Tabel berikut mencantumkan poin yang membedakan database relasional dari database NoSQL.
Arsitektur
Cassandra di desain awal untuk menghandle Big Data yang terdiri dari banyak titik-titik (node) yang terpisah-pisah dan saling bekerjasama nyaris tanpa ada kesalahan.
Cassandra memiliki peer-to-peer sistem terdistribusi di seluruh node, dan data didistribusikan di antara semua node dalam sebuah cluster.
Semua node dalam sebuah cluster memainkan peran yang sama. Setiap node independen dan pada saat yang sama saling berhubungan ke node lain.
Setiap node dalam sebuah cluster dapat menerima membaca dan menulis permintaan, terlepas dari mana data sebenarnya terletak di cluster.
Ketika sebuah node performanya turun, membaca permintaan / tulis dapat dilayani dari node lain dalam jaringan.
Replikasi data di Cassandra disebut dengan istilah Gossip Protocol dimana satu atau lebih node dalam sebuah Cluster sebagai replika untuk bagian tertentu dari data. Jika terdeteksi bahwa beberapa node datanya out of date, Cassandra akan mengembalikan nilai terbaru untuk klien. Setelah mendapatkan nilai kembalian terbaru, Cassandra melakukan perbaikan membaca di latar belakang untuk memperbarui nilai-nilai yang out of date.
Gambar berikut menunjukkan bagaimana Cassandra menggunakan replikasi data antara node dalam sebuah cluster untuk memastikan tidak ada satu titik yang mengalami kegagalan.
Konsep Replication Antar Node Cassandra
Komponen
Cassandra mempunyai beberapa komponen utama yaitu :
- Node : ini adalah server tempat penyimpanan data.
- Data Center : kumpulan dari beberapa node.
- Cluster : Kumpulan dari beberapa data center.
- Commit Log : adalah log dari proses penulisan di Cassandra , yang berfungsi juga sebagai Crash Recovery Mechanism.
- Mem-Table : Adalah memory-resident data structure. Setelah menulis dalam commit log , cassandra melakukan penulisan di sini.
- CQL : Cassandra Query Language , adalah bahasa perintah query di cassandra .
Saat ini Cassandra telah dipakai oleh beberapa situs terkenal antara lain Facebook, Twitter, Cisco, Rackspace, ebay, Twitter, Netflix, dan banyak lagi. Jadi secara implementasi Cassandra relatif teruji.
Kesimpulan
Akhir” ini memang banyak aplikasi yang menggunakan sistem data terpusat (Data Center), Oleh karena itu Cassandra bisa menjadi salah satu solusi tepat yang digunakan untuk menyimpan data dalam skala yang besar (Big Data).
Sumber : https://medium.com/@danairwanda/pengenalan-cassandra-database-nosql-3d33a768a20
Tidak ada komentar:
Posting Komentar