Compaction Strategies¶
This simulation shows the ScyllaDB write path: write → commitlog → memtable → flush → compaction.
Select a compaction strategy: Incremental (ICS), Leveled (LCS), or Time-Window (TWCS).
Select a workload, and see SSTables accumulate and merge.
The simulation measures space, write, and read amplification from the simulated data.
The sub-properties have the same names as the CQL compaction options.
ScyllaDB Compaction Strategy Simulator
Write path
Client0
writes issued
→
Commitlog0 MB
append-only, truncated on flush
→
Memtable0 / 12 MB
in RAM, sorted by key
→
Flush0
SSTables written
→
Compaction0
idle
SSTables on disk
newer / smaller → older / larger
selected for compaction
being written
block width ∝ size on disk
Amplification
SSTables
0
On disk
0 MB
Live data
0 MB
unique live rows
Space amp
1.00×
peak 1.00×
Write amp
1.00×
bytes written / flushed
Read amp
0
files per lookup
Amplification over time
Space
Write
Read
Strategy comparison
typical at production scale — the tiles above measure this run
Note
This is an educational simulation. It is simplified, and it does not show all of the ScyllaDB internals exactly.
Source code: tzach/compaction-viz on GitHub