Part 1 — Introduction to Apache Cassandra
Apache Cassandra Series
- Part 1 — Introduction to Apache Cassandra
- Part 2 — The CAP Theorm
- Part 3 — Query First Approach
- Part 4 — Partitioning, Rings and Tokens
- Part 5 — Replication, Data Centers and Racks
- Part 6 — CQL — Keyspace and Table
- Part 7 — CQL — Consistancy, Inserts and Selects
- Part 8 — CQL — Timestamps, TTLs, Collections and Secondary Indexs
- Part 9 — CQL — UUIDs and Counters
- Part 10 — CQL — Materialized Views
- Part 11 — Peer To Peer Architecture
- Part 12 — Snitch
- Part 13 — Gossip Protocol
- Part 14 — Cassandra Write Path
- Part 15 — Cassandra Read Path
- Part 16 — Compaction
Apa itu Apache Cassandra ?
Apache Cassandra adalah database terdisribusi, yaitu bisa tersedia di beberapa komputer secara bersamaan, dimana masing masing berkomunikasi dan bertukar data.
Kelebihan Cassandra adalah dia bisa menulis data ke database secara cepat, biasanya digunakan di dunia Big Data seperti analytic atau IOT dimana banyak device menulis banyak data. Cassandra juga bisa digunakan untuk menyimpan data time series seperti untuk melakukan pencarian berdasarkan range tanggal.
Konsep Dasar
Tabel di Cassandra memiliki format column-based, dimana setiap kolom dianggap sebagai sub-tabel sendiri dan ditulis di file masing masing. Hal ini berbeda dengan database SQL seperti PostgreSQL dan MySQL yang menggunakan format row-based.
Pada tabel di atas, terdapat 4 field yaitu Name, Age, Gender, dan Car yang memiliki format key-value. Selain itu terdapat juga kolom Id yang pada Cassandra disebut sebagai Partition Key. Walaupun data yang ditampilkan seperti itu, sebenarnya data yang disimpan sedikit berbeda.
Bisa dilihat pada tabel di atas pada sub-tabel Gender, terdapat {Gender: M} *4
yang berarti Gender yang bernilai M mewakili sampai 4 baris di kebawah. Hal ini bertujuan untuk menghemat penggunaan memori.
Di Cassandra, kita diizinkan untuk memiliki field yang kosong seperti pada sub-tabel Car. Hal ini berbeda dengan nilai null yang dapat menyebabkan penggunaan hardisk yang lebih besar, sedangkan nilai kosong tidak akan menambah beban hardisk.
Kesimpulan
Apache Cassandra adalah sebuah database terdistribusi yang memungkinkan penyimpanan data secara bersamaan di beberapa komputer. Keunggulannya terletak pada kemampuannya menulis data dengan cepat, cocok digunakan dalam konteks Big Data seperti analitik atau Internet of Things (IoT), di mana banyak perangkat menghasilkan data secara besar-besaran. Cassandra juga ideal untuk menyimpan data deret waktu dan melakukan pencarian berdasarkan rentang tanggal. Struktur dasar Cassandra menggunakan format column-based, di mana setiap kolom dianggap sebagai sub-tabel tersendiri yang disimpan dalam file terpisah, berbeda dengan basis data SQL yang menggunakan format row-based. Cassandra memungkinkan adanya field kosong dalam tabelnya, yang berbeda dengan nilai null pada basis data SQL yang dapat meningkatkan penggunaan disk. Konsep ini bertujuan untuk menghemat penggunaan memori.
🔔 Jika anda menyukai artikel ini, silahkan subscribe agar anda bisa mendapatkan notifikasi jika ada artikel baru atau anda bisa melihat artikel yang telah dipublikasikan disini. 🚀
📝 Jika ada pertanyaan atau saran, anda bisa menulisnya di kolom komentar atau mengirim pesan lewat Medium.
Thank you for your support! 🌟