Pengenalan Tentang Cassandra
Apa itu Cassandra?
Sejarah
Avinash
Lakshman, salah satu penulis Dynamo Amazon , dan Prashant Malik awalnya
mengembangkan Cassandra di Facebook untuk memberi daya pada fitur pencarian kotak masuk
Facebook. Facebook merilis Cassandra sebagai proyek open-source
pada kode Google pada Juli 2008. Pada
Maret 2009, ia menjadi proyek Apache Incubator . Pada 17
Februari 2010, ia lulus ke proyek tingkat atas. Pengembang Facebook menamai
basis data mereka dengan nama nabi mitologis Trojan Cassandra , dengan kiasan klasik tentang kutukan pada oracle .
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.
Cassandra merupakan sebuah sistem penyimpanan data
terdistribusi untuk menangani jumlah data yang sangat besar dan terstruktur.
Cassandra juga dikembangkan Apache, pengembang yang sama untuk basis data
CouchDB. Untuk memproses datanya, Cassandra menggunakan bahasa sendiri yang
mirip dengan SQL yaitu Cassandra Query Language (CQL). 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:
Fitur
Sama dengan MonggoDB atau pun konsep database
berbasis NoSQL lainnya, Cassandra mengusung keunggulan seperti.
a. El͏ast͏ic
Sc͏al͏ab͏il͏ity, K͏ar͏en͏a k͏ons͏epny͏a ͏ad͏al͏ah d͏at͏ab͏as͏e
t͏erd͏istr͏ib͏us͏i, p͏en͏amb͏ah͏an k͏ap͏as͏it͏as p͏eny͏imp͏an͏an d͏ap͏at
d͏it͏amb͏ah s͏ew͏akt͏u w͏akt͏u d͏an t͏anp͏a t͏er͏ik͏at h͏ardw͏ar͏e d͏an
l͏ok͏as͏i y͏ang s͏am͏a, j͏ad͏i b͏is͏a j͏ad͏i d͏at͏a ͏A d͏i t͏ar͏uh d͏i
͏Ind͏on͏es͏i͏a , d͏at͏a l͏a͏inny͏a d͏i t͏ar͏uh d͏i n͏eg͏ar͏a l͏a͏in, d͏eng͏an
s͏erv͏er y͏ang b͏erb͏ed͏a b͏a͏ik h͏ardw͏ar͏e m͏a͏up͏un pl͏atf͏ormny͏a.
b. P͏eny͏imp͏an͏an
d͏at͏a y͏ang fl͏eks͏ib͏el , C͏ass͏andr͏a m͏eng͏ak͏om͏od͏as͏i s͏em͏u͏a f͏orm͏at
d͏at͏a y͏ang ͏ad͏a, t͏erm͏as͏uk: t͏erstr͏ukt͏ur, s͏em͏i-t͏erstr͏ukt͏ur, d͏an
t͏id͏ak t͏erstr͏ukt͏ur. S͏ec͏ar͏a d͏in͏am͏is d͏ap͏at m͏eng͏ak͏om͏od͏as͏i
p͏er͏ub͏ah͏an str͏ukt͏ur d͏at͏a ͏ and͏a s͏es͏u͏a͏i d͏eng͏an k͏eb͏ut͏uh͏an
͏And͏a.
c. D͏istr͏ib͏us͏i
d͏at͏a y͏ang m͏ud͏ah ,C͏ass͏andr͏a m͏emb͏er͏ik͏an fl͏eks͏ib͏il͏it͏as ͏unt͏uk
m͏end͏istr͏ib͏us͏ik͏an d͏at͏a m͏an͏a y͏ang ͏And͏a b͏ut͏uhk͏an d͏eng͏an
m͏er͏epl͏ik͏as͏i d͏at͏a d͏i b͏eb͏er͏ap͏a p͏us͏at d͏at͏a.
d. M͏en͏ul͏is
c͏ep͏at ,C͏ass͏andr͏a d͏ir͏anc͏ang ͏unt͏uk b͏erj͏al͏an p͏ad͏a p͏er͏angk͏at
k͏er͏as l͏ow ͏end. ͏I͏a m͏el͏ak͏uk͏an m͏en͏ul͏is c͏ep͏at d͏an d͏ap͏at
m͏eny͏imp͏an r͏at͏us͏an t͏er͏abyt͏e d͏at͏a, t͏anp͏a m͏eng͏orb͏ank͏an
͏ef͏is͏i͏ens͏i m͏emb͏ac͏any͏a.
Karakteristik Apache Cassandra
dari sisi arsitektur dan keamanan
Arsitektur Apache Cassandra
- Apache Cassandra mendistribusikan data antar node secara transparan kepada pengguna. Setiap node dapat menerima permintaan (membaca, menulis, atau menghapus) dan rute ke node yang benar bahkan jika data tidak disimpan dalam simpul tersebut.
- Pengguna dapat menentukan berapa banyak replika yang dibutuhkan, dan Apache Cassandra menangani penciptaan replika dan manajemen dengan transparan.
- Konsistensi: Ketika menyimpan dan membaca data, pengguna dapat memilih tingkat konsistensi yang diharapkan per setiap operasi. Misalnya, jika “quorum” tingkat konsistensi digunakan saat menulis atau membaca, data ditulis dan dibaca dari lebih dari setengah dari node di klaster, maka dengan konsistensi yang ditawarkan Apache Cassandra memungkinkan pengguna untuk memilih tingkat konsistensi yang paling cocok untuk kasus penggunaan.
- Apache Cassandra menyediakan layanan menulis sangat cepat, dan sebenarnya lebih cepat daripada membaca dengan kemampuan transfer data antara 80-360MB/sec per node.
Arsitektur yang
dihasilkan sangat berskala tinggi. Pengguna dapat membangun klister Cassandra
yang memiliki 10s 100s node yang mampu menangani terabyte ke petabyte
data.
Keunggulan
Beberapa poin keunggulan Apache Cassandra
diantaranya:
- Berskala tinggi dan dengan ketersediaan tinggi tanpa titik tunggal kesalahan
- Merupakan Implementasi table-oriented NoSQL
- Memiliki kemampuan yang tinggi menulis dan membaca throughput
- SQL-seperti bahasa query dan dukungan pencarian melalui indeks sekunder
- Konsistensi dan dukungan untuk replikasi
- skema fleksibel
Selain
itu, Apache Cassandra ditulis menggunakan bahasa pemrograman Java dan memiliki
berbagai gabungan keunggulan yaitu kompresi data yang terbangun, dukungan
MapReduce, indeks primer / sekunder, dan fitur keamanan. Model data Apache Cassandra
juga menawarkan kenyamanan indeks kolom dengan kinerja update log-terstruktur,
dukungan yang kuat untuk denormalisasi, dan tempat penyimpanan yang sangat
kuat.
Beberapa perusahaan pengguna Cassandra antara lain
Referensi:
.
Komentar
Posting Komentar