@@ -42,6 +42,8 @@ A distinctive aspect of TidesDB is its organization around column families. Each
4242
4343This design allows for domain-specific optimization and isolation between different types of data stored in the same database.
4444
45+ ![ ] ( /column-family-board.png )
46+
4547## 4. Core Components and Mechanisms
4648### 4.1 Memtable
4749The memtable is an in-memory data structure that serves as the first landing point for all write operations. Key features include:
@@ -58,6 +60,8 @@ SSTables are the immutable on-disk components of TidesDB. Their design includes:
5860- ** Min-Max Key Range** : Each SSTable stores the minimum and maximum keys it contains to optimize range queries. This block lives at block 0
5961- ** Immutability** : Once written, SSTables are never modified (only eventually merged or deleted)
6062
63+ ![ ] ( /sst-block-format-board.png )
64+
6165### 4.3 Write-Ahead Log (WAL)
6266For durability, TidesDB implements a write-ahead logging mechanism:
6367
@@ -134,6 +138,8 @@ TidesDB implements two distinct compaction strategies:
134138- Blocks less than manual compaction
135139- Continues until system shutdown
136140
141+ ![ ] ( /sst-pair-merge-board.png )
142+
137143### 6.3 Compaction Mechanics
138144During compaction:
139145
@@ -143,6 +149,8 @@ During compaction:
1431494 . Tombstones (deletion markers) and expired TTL entries are purged
1441505 . Original SSTables are deleted after successful merge
145151
152+ ![ ] ( /sst-pair-merge-tombstone-board.png )
153+
146154## 7. Performance Optimizations
147155### 7.1 Block Indices
148156TidesDB employs block indices to optimize read performance:
0 commit comments