Skip to content

Commit

Permalink
rm progress in readme as it's complete
Browse files Browse the repository at this point in the history
Signed-off-by: Alex Chi <iskyzh@gmail.com>
  • Loading branch information
skyzh committed Jan 24, 2024
1 parent 9ca27a8 commit c7e7d9b
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 52 deletions.
48 changes: 0 additions & 48 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,54 +48,6 @@ And we have a compaction simulator to experiment with your compaction algorithm
cargo run --bin compaction-simulator-ref
```

## Progress

We are working on a new version of the mini-lsm tutorial that is split into 3 weeks.

* Week 1: Storage Format + Engine Skeleton
* Week 2: Compaction and Persistence
* Week 3: Multi-Version Concurrency Control
* The Extra Week / Rest of Your Life: Optimizations (unlikely to be available in 2024...)

✅: finished \
🚧: WIP and will likely be available soon

| Week + Chapter | Topic | Solution | Starter Code | Writeup |
| -------------- | ----------------------------------------------- | -------- | ------------ | ------- |
| 1.1 | Memtables ||||
| 1.2 | Merge Iterators ||||
| 1.3 | Block Format ||||
| 1.4 | Table Format ||||
| 1.5 | Storage Engine - Read Path ||||
| 1.6 | Storage Engine - Write Path ||||
| 1.7 | Bloom Filter and Key Compression ||||
| 2.1 | Compaction Implementation ||||
| 2.2 | Compaction Strategy - Simple ||||
| 2.3 | Compaction Strategy - Tiered ||||
| 2.4 | Compaction Strategy - Leveled ||||
| 2.5 | Manifest ||||
| 2.6 | Write-Ahead Log ||||
| 2.7 | Batch Write + Checksum | | | |
| 3.1 | Timestamp Key Encoding + New Block Format | | | |
| 3.2 | Prefix Bloom Filter | | | |
| 3.3 | Snapshot Read | | | |
| 3.4 | Watermark and Garbage Collection | | | |
| 3.5 | Transactions and Optimistic Concurrency Control | | | |
| 3.6 | Serializable Snapshot Isolation | | | |
| 3.7 | TTL (Time-to-Live) Entries | | | |
| 4.1 | Benchmarking | | | |
| 4.2 | Block Compression | | | |
| 4.3 | Trivial Move and Parallel Compaction | | | |
| 4.4 | Alternative Block Encodings | | | |
| 4.5 | Rate Limiter and I/O Optimizations | | | |
| 4.6 | Build Your Own Block Cache | | | |
| 4.7 | Build Your Own SkipList | | | |
| 4.8 | Async Engine | | | |
| 4.9 | Key-Value Separation | | | |
| 4.10 | Column Families | | | |
| 4.11 | Sharding | | | |
| 4.12 | SQL over Mini-LSM | | | |

## License

The Mini-LSM starter code and solution are under Apache 2.0 license. The author reserves the full copyright of the tutorial materials (markdown files and figures).
9 changes: 5 additions & 4 deletions mini-lsm-book/src/week4-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ This is an advanced part that deep dives into optimizations and applications of
| 4.6 | Build Your Own Block Cache | | | |
| 4.7 | Build Your Own SkipList | | | |
| 4.8 | Async Engine | | | |
| 4.9 | Key-Value Separation | | | |
| 4.10 | Column Families | | | |
| 4.11 | Sharding | | | |
| 4.12 | SQL over Mini-LSM | | | |
| 4.9 | IO-uring-based I/O engine | | | |
| 4.10 | Key-Value Separation | | | |
| 4.11 | Column Families | | | |
| 4.12 | Sharding | | | |
| 4.13 | SQL over Mini-LSM | | | |

0 comments on commit c7e7d9b

Please sign in to comment.