Cassandra - No SQL
A. Pengertian Cassandra
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.
B. Sejarah Cassandra
Cassandra dikembangkan oleh facebook untuk pencarian kotak masuk, dan di Open source oleh facebook pada bulan juli 2008. Kemudian Cassandra diterima menjadi apache incubator pada Maret 2009 untuk membuat proyek top-level apache sejak februari 2010.
C. Fitur Cassandra
Sama dengan MongoDB , Cassandra memiliki beberapa keunggulan seperti :
• Elastic Scalability
Karena konsepnya adalah database terdistribusi, penambahan kapasitas penyimpanan dapat ditambah sewaktu waktu dan tanpa terikat hardware dan lokasi yang sama. 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 sesuai dengan kebutuhan
• Distribusi data yang mudah
Cassandra memberikan fleksibilitas untuk mendistribusikan data mana yang dibutuhkan 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.
D. Arsitektur Cassandra
Tujuan desain Cassandra adalah untuk menangani beban kerja data besar di beberapa node tanpa titik tunggal kegagalan. Cassandra memiliki peer-to-peer sistem terdistribusi di seluruh node-nya, dan data didistribusikan di antara semua node dalam sebuah cluster.
1. Semua node dalam sebuah cluster memainkan peran yang sama. Setiap node independen dan pada saat yang sama saling berhubungan untuk node lain.
2. Setiap node dalam sebuah cluster dapat menerima membaca dan menulis permintaan, terlepas dari mana data sebenarnya terletak di cluster.
3. Ketika sebuah node turun, membaca permintaan / tulis dapat dilayani dari node lain dalam jaringan.
E. Komponen Cassandra
Cassandra mempunyai beberapa komponen utama yaitu :
1. Node : ini adalah server tempat penyimpanan data.
2. Data Center : kumpulan dari beberapa node.
3. Cluster : Kumpulan dari beberapa data center.
4. Commit Log : adalah log dari proses penulisan di Cassandra , yang berfungsi juga sebagai Crash Recovery Mechanism.
5. Mem-Table : Adalah memory-resident data structure. Setelah menulis dalam commit log , cassandra melakukan penulisan di sini.
6. SSTable - Ini adalah file disk yang data memerah dari mem-meja ketika isinya mencapai nilai ambang batas.
7. Bloom filter - Ini adalah apa-apa tapi cepat, nondeterministic, algoritma untuk menguji apakah suatu unsur adalah anggota dari set. Ini adalah jenis khusus cache. Bloom filter diakses setelah setiap query.
F. Perbedaan SQL dan Cassandra NoSQL
SQL 1 |
Cassandra 1 |
Cassandra 2 |
SQL 3 |
Cassandra 3 |
SQL 4 |
Cassandra 4 |
SQL 5 |
Cassandra 5 |
Komentar
Posting Komentar