Database / RocksDB Basics Interview Questions
What is Read Amplification?
Read amplification is the ratio between the amount of data actually read from storage to answer a query and the amount of data logically needed to answer it.
- Happens because a single key lookup may need to check the MemTable and multiple SSTables across several levels before finding, or ruling out, that key
- Reduced significantly by Bloom filters and index blocks, which let RocksDB skip files that clearly don't contain the key
- Tends to be higher under compaction styles, like universal compaction, that favor write throughput over keeping data tightly organized
Read amplification is the primary cost an LSM-tree design accepts in exchange for its much faster write path compared to structures like a B-tree.
More Related questions...