Hybrid log
A hybrid log combines an in-memory region supporting in-place updates with read-only records backed by persistent storage.
A mutable region permits repeated updates without a fresh append each time; updates to read-only records create tail copies. An epoch-coordinated safe read-only boundary defers read-modify-write copying while an older in-place update remains possible. [1]
Checkpoint choice: Fold-over freezes and flushes the main log through its tail, so subsequent updates need new records. A snapshot instead writes the in-memory state to a separate checkpoint file. In-memory completion does not itself establish durability. [2]
Recovery position: Concurrent prefix recovery identifies a committed prefix per session rather than one global issue-time cutoff. [4] The documented API also reports an exception list for pending operations excluded from a checkpoint; a sequence-number maximum alone is insufficient. [2]
Cleaning copies live records forward; truncation expires an address range. Scanning log records can return old versions and tombstones, unlike iteration over current keys. [3]
Relations
Advantages
- Repeated hot-record updates can avoid index-pointer replacement and whole-record copying. [1]
Limitations
- The 2018 throughput evaluation excludes checkpointing, recovery and expiration-based garbage-collection costs. [1]
- Compaction is bounded by the safe read-only address, not simply by the tail. [3]
Citations
- Chandramouli et al. FASTER: A Concurrent Key-Value Store with In-Place Updates. SIGMOD 2018, sections 2.1, 6 and 7.1.
- FASTER documentation: FasterKV Checkpointing and Recovery, snapshot, fold-over and commit-point semantics.
- FASTER documentation: FasterKV Basics, Log Scan and Log Compaction.
- Prasaad, Chandramouli and Kossmann. Concurrent Prefix Recovery: Performing CPR on a Database. SIGMOD 2019, section 2.
Further reading
Sources & caveats
- Historical FASTER mechanism and later FasterKV API documentation are distinguished; no current-version benchmark is claimed.
- The research papers are SIGMOD 2018 (DOI 10.1145/3183713.3196898) and SIGMOD 2019 (DOI 10.1145/3299869.3300090).