~/talk

Dissecting the Humble LSM Tree and SSTable

Talkat SREcon22 Europe/Middle East/Africa · 2022-10-25..10-27· [databases]
links:none on file
slides:none on file

Practical walkthrough of an LSM implementation shows a Python memtable that flushes at 5 items into immutable SSTable files, uses commit logs for durability, encodes deletions as tombstones with timestamps (last-timestamp wins), and reads by merging file results; the demo uses a naive line‑by‑line scan (no binary search) so it’s slow but illustrative. Real systems load Bloom filters in RAM to avoid disk hits and run background compaction (size‑tiered, leveled or time-window compaction) to drop obsolete versions; SQLite4 is a production C option.

AI-written summary · about

  1. 0:00Introduction
  2. 6:22Data Structures
  3. 8:10Hard Drives
  4. 11:16SSD
  5. 15:44Data Structure
  6. 16:46Python Implementation
  7. 24:11Database Implementation
  8. 27:33Bloom Filters
  9. 30:57Compaction
  10. 34:23Compaction Strategies
  11. 36:43Summary
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.