Six New Important RocksDB Features And Planned Works
summary
Six concrete additions: a user‑space persistent cache that appends compressed blocks to log files, evicts whole files and maps block IDs in memory; direct I/O options that bypass OS page cache for reads and/or compactions; SST bulk loading to ingest pre‑sorted files directly into low levels and avoid compaction CPU; an insert‑with‑hint prefix table (~250 bytes/prefix) that speeds M‑table inserts (benchmarks show ~75% faster); a range‑delete API that writes range tombstones; blob storage that cuts write amplification from ~10 to ~1 for large objects.
AI-written summary · about
chapters (40)
- 0:00Intro
- 1:35Mission of RocksDB
- 6:03Leverage Tiered Storage
- 6:37Caching Strategy
- 9:38Persistent Cache: Eviction
- 10:04Persistent Cache: lookup
- 10:38How to Use Persistent Cache
- 11:28What is Direct I/O? • In Linux, it is to use O_DIRECT option
- 12:18Precondition to consider Direct I/O
- 13:14Benefit of Using Direct I/O
- 14:44Use Direct I/O to by pass OS page cache
- 15:48Future Plan
- 17:17Use Case 1: Shard Migration
- 17:53Import from Hadoop
- 18:37Bulk Loading vs. Normal DB Writes
- 19:51Bulkload - Create SST file
- 21:16RocksDB Write Path - Memtable
- 21:54RocksDB Write Path - Flush
- 22:59Bulkload - Ingest SST file
- 24:04Bulkload - memtable conflict
- 25:35Time-series data
- 27:06Reduce CPU usage for binary search
- 28:00Insert With Hints: Implementation
- 29:09Insert with hint: How to enable
- 29:41Insert with hint: Overhead and Limitaton
- 30:39Benchmarks
- 32:36Range Deletion Challenges
- 35:12DB::DeleteRange(): New API
- 36:38Blob Storage: Motivation
- 37:16Blob Storage: Blob Files
- 38:58Blob Storage: Garbage Collection
- 40:01Benchmark - Write Amplification
- 40:36Bulk Loading: Work Status
- 41:25Recap: Compaction A RocksDB operation that merges SST files
- 41:40Recap: Compaction Filter A customizable logic to delete key-value pairs during compaction
- 42:24Manage Compaction Filters
- 43:27Lua Compaction Filter
- 44:16Example lua::RocksluaCompactionFilter Options lua_opt
- 45:12Recap: Six New Features
- 46:02Future of RocksDB
related talks
52mRocksDB Performance and Reliability Practics
11mEvolution of Development Priorities in Key-value Stores Serving Large-scale Applications
57mRocksDB
29mAccelerating Performance: Mastering RocksDB for High Speed Data Processing
24mPerformance tuning in BlueStore & RocksDB
19mA zone-aware cache system for distributed databases
46mBlueStore V2 - an Evolutionary Step Forward
29mCharacterizing, Modeling, and Benchmarking RocksDB Key-Value Workloads at Facebook
