- Pengenalan Apache Cassandra
- Arsitektur Distributed
- Data Model — Keyspace, Tabel, Kolom
- CQL Dasar — CRUD Operations
- Primary Key — Partition Key & Clustering
- Replication Strategy
- Consistency Level
- Data Modeling — Query-First Approach
- TTL & Lightweight Transactions
- Compaction & Maintenance
- Quiz Pemahaman
1. Pengenalan Apache Cassandra
Apache Cassandra adalah NoSQL database yang dirancang untuk menangani data dalam skala sangat besar dengan ketersediaan tinggi (high availability). Dikembangkan oleh Facebook pada tahun 2008 dan kemudian dijadikan open source oleh Apache Foundation.
Cassandra banyak digunakan oleh perusahaan besar seperti Instagram, Netflix, Apple, Uber, dan Discord untuk menyimpan miliaran baris data dengan throughput tinggi.
Kapan Menggunakan Cassandra?
| Fitur | Cassandra | MySQL/PostgreSQL |
|---|---|---|
| Tipe | NoSQL (Wide-column store) | Relational (SQL) |
| Skala | Horizontal (tambah node) | Vertikal (tambah resource) |
| Ketersediaan | Tidak ada single point of failure | Perlu setup master-slave |
| Query | CQL (subset SQL) | Full SQL |
| JOIN | Tidak mendukung | Mendukung |
| ACID Transaction | Hanya single partition | Full ACID |
| Konsistensi | Tunable (eventual → strong) | Strong (default) |
| Cocok untuk | Time-series, IoT, logging, social media | E-commerce, ERP, CRUD apps |
Gunakan Cassandra jika: (1) data Anda terukur dalam miliaran baris, (2) butuh high availability 24/7, (3) query polanya sederhana (berdasarkan key), (4) write-heavy workload. Jika butuh JOIN kompleks atau transaction multi-tabel, tetap pakai RDBMS.