The Unified Compaction Strategy in Cassandra 5
summary
Unified Compaction Strategy unifies leveled and size-tiered behavior by computing SSTable density (size divided by token share) and only compacting overlap sections of overlapping SSTables, then emitting results split by configurable shard boundaries. Example: four recent 100 MB flushes become four shards with density 400 MB; a later compaction of ~430 MB across half the token range computes eight shards but writes four outputs. A single tuning parameter trades read vs write amplification; switching to UCS shows an immediate performance gain (example: ~2× faster) and avoids full recompact on upgrade.
AI-written summary · about
chapters (16)
- 0:00Introduction to compaction
- 2:00Current strategies in Cassandra
- 4:28Limitations of size and leveled
- 7:17Unified compaction concept
- 10:10Density and overlap explained
- 13:35UCS compaction example
- 18:16Shard boundaries and density
- 21:32Handling large datasets
- 22:14Performance comparison
- 23:42Upgrading to UCS
- 24:03Whole table exploration
- 24:46Prioritizing compactions
- 25:28Parameter adjustments
- 26:31Future adaptive compaction
- 26:52Time-based levels
- 27:54Conclusion and Q&A
related talks
39mCompaction for All! Unified Compaction Strategy in Cassandra 5.0 (CEP-26)
01h 02mBuilding state-of-art LSM-tree compaction in ScyllaDB
24mTSDB Data Compactions on Scale Without Headache: Now & Future
45mCassandra Architecture: Understanding, Scaling and Optimizing
25mImproving Bad Partition Handling in Apache Cassandra
25mDeciphering Cassandra’s Prophecy: Preventing the Fall of Your Application
18mPreview: KV-Stores and Databases
53mApache Cassandra. Inception - all you need to know
