基于机器学习的RocksDB存储引擎配置优化
发布时间:2021-05-05 23:07
随着大规模分布式存储技术的发展,对传统关系型数据库的改造研究成为热点,出现了诸多以RocksDB作为存储引擎的新型数据库系统。RocksDB是一种基于日志结构合并树的键值对系统,它具有化随机I/O为顺序I/O的优点,是当前大规模数据存储的首选产品。然而,RocksDB也存在存储参数不能适应工作负载变化和读性能低下的缺点。在极端环境中,RocksDB的默认参数配置会由于后台合并操作队列过长,导致出现线程阻塞甚至写停止的状况,性能大幅下降。在读性能方面,RocksDB中的读操作可能会在多个层级中发生I/O,并且不能无限制的通过增加索引和布隆过滤器加以缓解,导致不可避免的性能损失。因此,RocksDB虽然具有显著的写优势,但这些存在的问题也制约了其进一步的应用。针对上述问题,本文以建立工作负载自适应的存储引擎为目标,以机器学习技术为核心方法,对RocksDB存储引擎中的存储参数配置问题与热点数据主动缓存问题进行了深入的研究,论文主要贡献如下:1)针对默认参数不够灵活的问题,本文以提升RocksDB对通用工作负载的感知,自动调整存储参数为目的,设计并实现了基于强化学习的智能调参模块。该模块捕捉...
【文章来源】:南京大学江苏省 211工程院校 985工程院校 教育部直属院校
【文章页数】:89 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
1 绪论
1.1 研究背景和意义
1.2 RocksDB系统概况
1.2.1 组成结构
1.2.2 基本操作与高级应用
1.2.3 面临的挑战
1.2.4 性能优化研究现状
1.3 本文的主要工作
1.4 本文组织结构
2 相关工作
2.1 读/写/空间开销权衡
2.1.1 RUM猜想
2.1.2 写性能优化
2.1.3 读性能优化
2.1.4 空间占用优化
2.1.5 开销权衡优化
2.2 工作负载和测试工具
2.2.1 核心工作负载
2.2.2 工作负载测试工具
2.3 基于机器学习的系统优化工作
2.3.1 针对工作负载的建模
2.3.2 基于学习的系统设计
2.3.3 面向环境的智能调参
2.4 小结
3 基于强化学习的存储参数自动调优
3.1 RocksDB中的参数调优问题
3.1.1 存储参数简介
3.1.2 问题定义
3.1.3 问题难点
3.1.4 解决思路
3.2 自动调参框架
3.2.1 系统准备
3.2.2 系统监控
3.2.3 系统交互
3.2.4 系统测试
3.3 系统实现
3.3.1 模型原理
3.3.2 模型实现细节
3.3.3 MyRocks守护线程实现
3.4 实验设计与分析
3.4.1 实验设置
3.4.2 系统性能分析
3.5 小结
4 基于预测分析的热点数据主动缓存
4.1 RocksDB中的热点数据读取问题
4.1.1 数据访问模式简介
4.1.2 问题定义和难点
4.1.3 解决思路
4.2 主动缓存框架
4.2.1 数据采集
4.2.2 系统交互
4.2.3 系统测试
4.3 系统实现
4.3.1 数据处理
4.3.2 模型实现
4.4 实验设计和分析
4.4.1 工作负载设计
4.4.2 性能分析
4.5 小结
5 总结与展望
5.1 本文总结
5.2 未来展望
致谢
参考文献
简历与科研成果
本文编号:3170758
【文章来源】:南京大学江苏省 211工程院校 985工程院校 教育部直属院校
【文章页数】:89 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
1 绪论
1.1 研究背景和意义
1.2 RocksDB系统概况
1.2.1 组成结构
1.2.2 基本操作与高级应用
1.2.3 面临的挑战
1.2.4 性能优化研究现状
1.3 本文的主要工作
1.4 本文组织结构
2 相关工作
2.1 读/写/空间开销权衡
2.1.1 RUM猜想
2.1.2 写性能优化
2.1.3 读性能优化
2.1.4 空间占用优化
2.1.5 开销权衡优化
2.2 工作负载和测试工具
2.2.1 核心工作负载
2.2.2 工作负载测试工具
2.3 基于机器学习的系统优化工作
2.3.1 针对工作负载的建模
2.3.2 基于学习的系统设计
2.3.3 面向环境的智能调参
2.4 小结
3 基于强化学习的存储参数自动调优
3.1 RocksDB中的参数调优问题
3.1.1 存储参数简介
3.1.2 问题定义
3.1.3 问题难点
3.1.4 解决思路
3.2 自动调参框架
3.2.1 系统准备
3.2.2 系统监控
3.2.3 系统交互
3.2.4 系统测试
3.3 系统实现
3.3.1 模型原理
3.3.2 模型实现细节
3.3.3 MyRocks守护线程实现
3.4 实验设计与分析
3.4.1 实验设置
3.4.2 系统性能分析
3.5 小结
4 基于预测分析的热点数据主动缓存
4.1 RocksDB中的热点数据读取问题
4.1.1 数据访问模式简介
4.1.2 问题定义和难点
4.1.3 解决思路
4.2 主动缓存框架
4.2.1 数据采集
4.2.2 系统交互
4.2.3 系统测试
4.3 系统实现
4.3.1 数据处理
4.3.2 模型实现
4.4 实验设计和分析
4.4.1 工作负载设计
4.4.2 性能分析
4.5 小结
5 总结与展望
5.1 本文总结
5.2 未来展望
致谢
参考文献
简历与科研成果
本文编号:3170758
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3170758.html