实现 LSM 树的灵活性和稳健性

Andy Huynh, Harshal A. Chaudhari, Evimaria Terzi, Manos Athanassoulis
{"title":"实现 LSM 树的灵活性和稳健性","authors":"Andy Huynh, Harshal A. Chaudhari, Evimaria Terzi, Manos Athanassoulis","doi":"10.1007/s00778-023-00826-9","DOIUrl":null,"url":null,"abstract":"<p>Log-structured merge trees (LSM trees) are increasingly used as part of the storage engine behind several data systems, and are frequently deployed in the cloud. As the number of applications relying on LSM-based storage backends increases, the problem of performance tuning of LSM trees receives increasing attention. We consider both <i>nominal</i> tunings—where workload and execution environment are accurately known a priori—and <i>robust</i> tunings—which consider <i>uncertainty</i> in the workload knowledge. This type of workload uncertainty is common in modern applications, notably in shared infrastructure environments like the public cloud. To address this problem, we introduce <span>Endure</span>, a new paradigm for tuning LSM trees in the presence of workload uncertainty. Specifically, we focus on the impact of the choice of compaction policy, size ratio, and memory allocation on the overall performance. <span>Endure</span> considers a robust formulation of the throughput maximization problem and recommends a tuning that offers near-optimal throughput when the executed workload is not the same, instead in a <i>neighborhood</i> of the expected workload. Additionally, we explore the robustness of flexible LSM designs by proposing a new unified design called K-LSM that encompasses existing designs. We deploy our robust tuning system, <span>Endure</span>, on a state-of-the-art key-value store, RocksDB, and demonstrate throughput improvements of up to 5<span>\\(\\times \\)</span> in the presence of uncertainty. Our results indicate that the tunings obtained by <span>Endure</span> are more robust than tunings obtained under our expanded LSM design space. This indicates that robustness may not be inherent to a design, instead, it is an outcome of a tuning process that explicitly accounts for uncertainty.\n</p>","PeriodicalId":501532,"journal":{"name":"The VLDB Journal","volume":"23 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-01-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Towards flexibility and robustness of LSM trees\",\"authors\":\"Andy Huynh, Harshal A. Chaudhari, Evimaria Terzi, Manos Athanassoulis\",\"doi\":\"10.1007/s00778-023-00826-9\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p>Log-structured merge trees (LSM trees) are increasingly used as part of the storage engine behind several data systems, and are frequently deployed in the cloud. As the number of applications relying on LSM-based storage backends increases, the problem of performance tuning of LSM trees receives increasing attention. We consider both <i>nominal</i> tunings—where workload and execution environment are accurately known a priori—and <i>robust</i> tunings—which consider <i>uncertainty</i> in the workload knowledge. This type of workload uncertainty is common in modern applications, notably in shared infrastructure environments like the public cloud. To address this problem, we introduce <span>Endure</span>, a new paradigm for tuning LSM trees in the presence of workload uncertainty. Specifically, we focus on the impact of the choice of compaction policy, size ratio, and memory allocation on the overall performance. <span>Endure</span> considers a robust formulation of the throughput maximization problem and recommends a tuning that offers near-optimal throughput when the executed workload is not the same, instead in a <i>neighborhood</i> of the expected workload. Additionally, we explore the robustness of flexible LSM designs by proposing a new unified design called K-LSM that encompasses existing designs. We deploy our robust tuning system, <span>Endure</span>, on a state-of-the-art key-value store, RocksDB, and demonstrate throughput improvements of up to 5<span>\\\\(\\\\times \\\\)</span> in the presence of uncertainty. Our results indicate that the tunings obtained by <span>Endure</span> are more robust than tunings obtained under our expanded LSM design space. This indicates that robustness may not be inherent to a design, instead, it is an outcome of a tuning process that explicitly accounts for uncertainty.\\n</p>\",\"PeriodicalId\":501532,\"journal\":{\"name\":\"The VLDB Journal\",\"volume\":\"23 1\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-01-11\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"The VLDB Journal\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1007/s00778-023-00826-9\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"The VLDB Journal","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1007/s00778-023-00826-9","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

日志结构合并树(LSM 树)越来越多地被用作多个数据系统背后存储引擎的一部分,并经常部署在云中。随着依赖基于 LSM 存储后端的应用数量不断增加,LSM 树的性能调优问题日益受到关注。我们既考虑了名义调优--在这种情况下,工作负载和执行环境都是事先准确知道的--也考虑了稳健调优--它考虑了工作负载知识的不确定性。这种类型的工作负载不确定性在现代应用中很常见,尤其是在公共云等共享基础设施环境中。为了解决这个问题,我们引入了 Endure,这是一种在工作负载不确定的情况下调整 LSM 树的新模式。具体来说,我们关注压缩策略、大小比例和内存分配的选择对整体性能的影响。Endure 考虑了吞吐量最大化问题的稳健表述,并推荐了一种调整方法,当执行的工作负载不同时,它能提供接近最优的吞吐量,而不是在预期工作负载的附近。此外,我们还探索了灵活的 LSM 设计的鲁棒性,提出了一种新的统一设计,称为 K-LSM,它包含了现有的设计。我们在最先进的键值存储 RocksDB 上部署了我们的鲁棒调优系统 Endure,并展示了在存在不确定性的情况下,吞吐量最多可提高 5(\times \)。我们的结果表明,通过 Endure 获得的调整比在我们扩展的 LSM 设计空间下获得的调整更稳健。这表明,鲁棒性可能不是设计所固有的,相反,它是明确考虑不确定性的调整过程的结果。
本文章由计算机程序翻译,如有差异,请以英文原文为准。

摘要图片

查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Towards flexibility and robustness of LSM trees

Log-structured merge trees (LSM trees) are increasingly used as part of the storage engine behind several data systems, and are frequently deployed in the cloud. As the number of applications relying on LSM-based storage backends increases, the problem of performance tuning of LSM trees receives increasing attention. We consider both nominal tunings—where workload and execution environment are accurately known a priori—and robust tunings—which consider uncertainty in the workload knowledge. This type of workload uncertainty is common in modern applications, notably in shared infrastructure environments like the public cloud. To address this problem, we introduce Endure, a new paradigm for tuning LSM trees in the presence of workload uncertainty. Specifically, we focus on the impact of the choice of compaction policy, size ratio, and memory allocation on the overall performance. Endure considers a robust formulation of the throughput maximization problem and recommends a tuning that offers near-optimal throughput when the executed workload is not the same, instead in a neighborhood of the expected workload. Additionally, we explore the robustness of flexible LSM designs by proposing a new unified design called K-LSM that encompasses existing designs. We deploy our robust tuning system, Endure, on a state-of-the-art key-value store, RocksDB, and demonstrate throughput improvements of up to 5\(\times \) in the presence of uncertainty. Our results indicate that the tunings obtained by Endure are more robust than tunings obtained under our expanded LSM design space. This indicates that robustness may not be inherent to a design, instead, it is an outcome of a tuning process that explicitly accounts for uncertainty.

求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
A versatile framework for attributed network clustering via K-nearest neighbor augmentation Discovering critical vertices for reinforcement of large-scale bipartite networks DumpyOS: A data-adaptive multi-ary index for scalable data series similarity search Enabling space-time efficient range queries with REncoder AutoCTS++: zero-shot joint neural architecture and hyperparameter search for correlated time series forecasting
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1