首页> 外文期刊>ACM transactions on computer systems >SILK+ Preventing Latency Spikes in Log-Structured Merge Key-Value Stores Running Heterogeneous Workloads
【24h】

SILK+ Preventing Latency Spikes in Log-Structured Merge Key-Value Stores Running Heterogeneous Workloads

机译:丝绸+防止日志结构合并键值存储异构工作负载的延迟峰值

获取原文
获取原文并翻译 | 示例

摘要

Log-Structured Merge Key-Value stores (LSM KVs) 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 article, we focus on latencies rather than throughput. We first document the fact that LSM KVs exhibit high tail latencies. The techniques that have been proposed for optimizing throughput do not address this issue, and, in fact, in some cases, exacerbate it. The root cause of these high tail latencies is interference between client writes, flushes, and compactions. Another major cause for tail latency is the heterogeneous nature of the workloads in terms of operation mix and item sizes whereby a few more computationally heavy requests slow down the vast majority of smaller requests.We introduce the notion of an Input/Output (I/O) bandwidth scheduler for an LSM-based KV store to reduce tail latency caused by interference of flushing and compactions and by workload heterogeneity. 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) separating client requests by size and by data access path. SILK+ is a new open-source LSM KV that incorporates this notion of an I/O scheduler.
机译:记录结构合并键值存储(LSM kVs)旨在通过捕获内存中的客户端写入,并且稍后仅将它们刷新到存储来提供良好的写性能。写入后来将写入磁盘上的树状数据结构,以提高读取性能并减少存储空间使用。它已被广泛记录,因此不断妨碍吞吐量。各种优化已成功处理此问题。这些技术包括速率限制刷新和作品,在作品中选择最大效果,并通过所谓的碎片LSM限制了对最高级别的作品。本文,我们专注于延迟而不是吞吐量。我们首先记录LSM KVS表现出高尾延迟的事实。已经提出的技术优化吞吐量没有解决这个问题,实际上在某些情况下加剧了它。这些高尾延迟的根本原因是客户端写入,刷新和作用之间的干扰。尾部延迟的另一个主要原因是工作负荷的异构性质,在操作混合和项目尺寸方面,其中一些计算沉重的请求减慢了绝大多数较小的请求。我们介绍了输入/输出的概念(I / O. )基于LSM的KV存储的带宽调度器,以减少由冲洗和作用的干扰以及工作量异质性引起的尾延迟。我们探索三种技术作为此I / O调度程序的一部分:(1)在低负载期间机会自动分配给内部操作,(2)在树的较低级别处优先次序刷新和作品,以及分离客户端按大小和数据访问路径请求。丝绸+是一种新的开源LSM KV,它包含I / O调度程序的这种概念。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号