SILK: Preventing Latency Spikes in Log-Structured Merge Key-Value Stores

Subscribers:
344,000
Published on ● Video Link: https://www.youtube.com/watch?v=vgSJlnXXkyg



Category:
Vlog
Duration: 50:14
4,971 views
128


LSM-based KV stores are designed to offer good write performance by capturing client writes in memory and only later flushing them to storage. Writes are later compacted into a tree-like data structure on disk to improve read performance and to reduce storage space use. It has been widely documented that compactions severely hamper throughput. Various optimizations have successfully dealt with this problem. These techniques include, among others, rate-limiting flushes and compactions, selecting among compactions for maximum effect, and limiting compactions to the highest level by so-called fragmented LSMs.

In this work we focus on latencies rather than throughput. The root cause of high tail latencies is interference between client writes, flushes and compactions. We introduce the notion of an I/O sched- uler for an LSM-based KV store to reduce this interference. We explore three techniques as part of this I/O scheduler: 1) opportunistically allocating more bandwidth to internal operations during periods of low load, 2) prioritizing flushes and compactions at the lower levels of the tree, and 3) preempting compactions.

SILK is a new open-source KV store that incorporates this notion of an I/O scheduler. SILK is derived from RocksDB, but the concepts can be applied to other LSM-based KV stores. We demonstrate that SILK achieves up to two orders of magnitude lower 99th percentile latencies than RocksDB and TRIAD, without any significant negative effects on other performance metrics.

Talk slides: https://www.microsoft.com/en-us/research/uploads/prod/2019/09/SILK-Preventing-Latency-Spikes-in-Log-Structured-Merge-Key-Value-Stores.pdf

Learn more about this and other talks at Microsoft Research: https://www.microsoft.com/en-us/research/video/silk-preventing-latency-spikes-in-log-structured-merge-key-value-stores/




Other Videos By Microsoft Research


2019-10-01The Future of Mathematics?
2019-09-30How Not to Prove Your Election Outcome
2019-09-30The Worst Form Including All Those Others: Canada’s Experiments with Online Voting
2019-09-30DIFF: A Relational Interface for Large-Scale Data Explanation
2019-09-30A Calculus for Brain Computation
2019-09-26Decoding Multisensory Attention from Electroencephalography for Use in a Brain-Computer Interface
2019-09-26A Short Introduction to DIMACS & DIMACS and MSR-NYC
2019-09-26Boosting Innovation and Discovery of Ideas
2019-09-26Resource-Efficient Redundancy for Large-Scale Data Processing and Storage Systems
2019-09-26Optimizing Declarative Graph Queries at Large Scale
2019-09-25SILK: Preventing Latency Spikes in Log-Structured Merge Key-Value Stores
2019-09-25Coverage Guided, Property Based Testing
2019-09-25Efficient Robot Skill Learning: Grounded Simulation Learning and Imitation Learning from Observation
2019-09-25Towards Secure and Interpretable AI: Scalable Methods, Interactive Visualizations, & Practical Tools
2019-09-25Sequential Estimation of Quantiles with Applications to A/B-testing and Best-arm Identification
2019-09-25Reproducible Codes and Cryptographic Applications
2019-09-25Inside AR and VR, a technical tour of the reality spectrum with Dr. Eyal Ofek [Podcast]
2019-09-24Verifying Web Page Layouts
2019-09-23Battling Unfair Demons in Peer Review
2019-09-19Engaging with Students and Parents in Bellevue School District in Multilingual Settings
2019-09-19Internship Program - MSR Montreal



Tags:
KV store
SILK
compactions
LSMs
LSM-based KV store
I/O scheduler
Microsoft Research
MSR
Oana Balmau