Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
marvin-j97 authored Nov 30, 2023
1 parent 43b2580 commit 3a09093
Showing 1 changed file with 4 additions and 11 deletions.
15 changes: 4 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,12 @@ A K.I.S.S. implementation of log-structured merge trees (LSM-trees/LSMTs).

This is the fastest and most feature-rich LSM-tree implementation in Rust! It features, among other things:

- Size-tiered or Levelled compaction
- Partitioned block index to reduce memory footprint [1]
- Size-tiered or Levelled compaction with concurrency support
- Partitioned block index to reduce memory footprint and keep startup time minimal [1]
- Block caching to keep hot data in memory
- Bloom filters to avoid expensive disk access for non-existing items
- Sharded log & memtable for concurrent writes
- Sharded journal & memtable for concurrent writes
- Journal truncation on recovery for consistency
- Atomic batch operations
- Automatic background compaction & tombstone eviction
- Does not spawn background threads unless actually needed
Expand All @@ -21,14 +22,6 @@ This is the fastest and most feature-rich LSM-tree implementation in Rust! It fe
- CRChecks data blocks
- 100% safe Rust

### Performance to expect roughly:

- Super quick startup, with low memory overhead (<10 MB for 500M+ objects)
- ~400k+ writes per second for a single writer thread
- ??? MB/s throughput
- <1μs reads for hot (cached) data (2M+ reads per second) for a single reader thread
- <10µs reads for cold data (500k+ reads per second) for a single reader thread

## Benchmarks

Testing system:
Expand Down

0 comments on commit 3a09093

Please sign in to comment.