RocksDB: Key-Value Store Optimized for Flash-Based SSD
RocksDB is an embedded persistent key-value store for low-latency and high-throughput workload. It has been adapted to a wide range of workloads, including RocksDB as an embedded DBMS and as storage engines of other DBMS systems. Our benchmarks show RocksDB can achieve 126K random reads per second on flash and 7 million random reads per second on memory. RocksDB also uses half the space as InnoDB, writes out half the bytes to SSD with a similar read and write performance, under the same MySQL test workload. In this talk, we will start with typical use cases of RocksDB and then describe basic architecture of RocksDB. We will explain why RocksDB is SSD-friendly by showing our view of performance on SSD. It's mainly about trade-offs among read, write and space amplifications. By tuning RocksDB compactions users can strike a balance among the three. Finally, we will introduce the features of compaction filters, merge operators, backup engines and transactions.
Software Engineer, Facebook Inc
Siying Dong is a software engineer working in the Database Engineering team at Facebook, focusing on RocksDB. He also worked on Hive, HDFS, and some other data warehouse infrastructures. Before joining Facebook, Siying worked in the SQL Azure Team at Microsoft. He received a bachelor’s degree from Tsinghua University and a master’s degree from Brandeis University.