GC-Free Indexing and Compaction (Part 3)

After Part I gave us raw I/O performance and Part II gave us safety and durability, there are still two fundamental flaws currently present: Reads are slow: Every lookup requires scanning the entire segment. This means an O(n) operation, and that&rsquo;s unacceptable. Disk usage is unbounded: Updates and deletes leave garbage bytes on the disk behind forever. So eventually, we run out of space. In…