新書推薦:

《
文化的故事:从岩画艺术到韩国流行音乐(译林思想史)哈佛大学教授沉淀之作 获奖不断 全球热销 亲历文化史上的15个关键点 从史前艺术到当代韩流的人类文化全景
》
售價:HK$
85.8

《
不结婚的社会:双亲如何成为特权,以及家庭为何很重要
》
售價:HK$
63.8

《
怎样决定大事
》
售價:HK$
109.9

《
蓝色机器:感受海洋引擎的深沉脉动
》
售價:HK$
96.8

《
美元霸权的兴衰:它将如何影响全球经济、金融市场和我们的财富(梳理美元发展历程,剖析崛起与衰退的根源)
》
售價:HK$
63.8

《
纸上博物馆·文明的崩溃:庞贝+玛雅+美索不达米亚(法国伽利玛原版引进,450+资料图片,16开全彩印刷)
》
售價:HK$
279.4

《
郭实猎与“开放中国”——19世纪上半叶的中西碰撞(精)
》
售價:HK$
74.8

《
海外中国研究·中国古代的身份制:良与贱
》
售價:HK$
85.8
|
內容簡介: |
本书主要介绍基于日志结构合并树LSM-tree 的键值存储系统的性能优化,具体包括:面向新型存储硬件的键值存储结构优化,面向资源负载自适应LSM-tree 结构的键值存储优化,基于强化学习相关性的LSM-tree 键值存储自动调优,面向知识图谱应用的LSM-tree 键值存储优化。本书可使读者对键值存储结构引擎有初步了解,并且掌握LSM-tree 存储引擎的实现和优化思路。
|
關於作者: |
柴艳峰,太原科技大学讲师,毕业于中国人民大学计算机应用技术专业,工学博士,主要研究方向为数据库、新型存储硬件和键值存储等系统的设计与优化研究。
|
目錄:
|
第1 章 绪论… ………………………………………………………………… 1
1.1 研究背景与意义… ……………………………………………………… 1
1.2 键值存储系统面临的挑战… …………………………………………… 2
1.2.1 键值存储与新硬件的适配优化… ………………………………… 2
1.2.2 键值存储结构的自适应优化… …………………………………… 3
1.2.3 基于机器学习的键值存储自动调优… …………………………… 3
1.3 本书的主要研究工作… ………………………………………………… 3
1.4 本书的组织结构… ……………………………………………………… 7
第2 章 键值存储系统相关背景… …………………………………………… 8
2.1 基于LSM-tree 的键值存储系统介绍… ………………………………… 8
2.1.1 LSM-tree 键值存储系统的基本概念… …………………………… 9
2.1.2 LSM-tree 键值存储系统存在的性能问题… …………………… 10
2.2 面向新硬件的键值存储系统结构优化… …………………………… 13
2.2.1 新型高密度磁盘的LSM-tree 键值存储优化… ………………… 15
2.2.2 面向固态磁盘SSD 的LSM-tree 键值存储优化… ……………… 17
2.2.3 面向非易失性内存的LSM-tree 键值存储优化… ……………… 18
2.3 面向动态资源及负载的自适应优化… ……………………………… 23
2.4 基于机器学习的数据库系统性能自动优化… ……………………… 24
第3 章 面向新型存储硬件的LSM-tree 合并机制优化…………………… 27
3.1 引言… ………………………………………………………………… 27
3.2 问题描述… …………………………………………………………… 28
3.2.1 LSM-tree 的写放大问题… ……………………………………… 29
3.2.2 LSM-tree 性能抖动延迟问题… ………………………………… 30
3.2.3 相关研究… ……………………………………………………… 31
3.3 底层驱动合并机制的设计与实现… ………………………………… 32
3.3.1 底层驱动合并机制整体设计… ………………………………… 33
3.3.2 底层驱动合并机制的实现… …………………………………… 38
基于日志结构合并树的键值存储系统优化研究
3.4 实验评估… …………………………………………………………… 42
3.4.1 实验测试环境配置… …………………………………………… 42
3.4.2 吞吐性能测试… ………………………………………………… 43
3.4.3 合并机制空间开销性能测试… ………………………………… 46
3.4.4 降低延迟影响测试… …………………………………………… 48
3.5 本章小结… …………………………………………………………… 49
第4 章 面向资源负载自适应LSM-tree 结构的键值存储优化…………… 51
4.1 引言… ………………………………………………………………… 51
4.2 问题描述… …………………………………………………………… 53
4.2.1 LSM-tree 形态对系统性能的影响… …………………………… 54
4.2.2 LSM-tree 合并机制对系统性能的影响… ……………………… 55
4.2.3 键值存储的自适应模型… ……………………………………… 56
4.2.4 相关研究… ……………………………………………………… 57
4.3 自适应LSM-tree 键值存储系统ALDC-DB 的设计与实现… ……… 58
4.3.1 自适应LSM-tree 结构设计… …………………………………… 58
4.3.2 自适应LSM-tree 结构实现… …………………………………… 61
4.3.3 自适应合并机制实现… ………………………………………… 64
4.4 实验评估… …………………………………………………………… 70
4.4.1 实验环境配置… ………………………………………………… 70
4.4.2 吞吐性能评估… ………………………………………………… 71
4.4.3 延迟影响性能评估… …………………………………………… 75
4.4.4 内部相关结构性能评估… ……………………………………… 76
4.5 本章小结… …………………………………………………………… 80
第5 章 基于相关性的LSM-tree 键值存储自动调优……………………… 81
5.1 引言… ………………………………………………………………… 81
5.2 问题描述… …………………………………………………………… 83
5.2.1 自动调优的时间开销… ………………………………………… 84
5.2.2 键值存储的结构性优化… ……………………………………… 84
5.2.3 相关研究… ……………………………………………………… 85
5.3 基于相关性的自动调优系统XTuning 的设计与实现… …………… 87
5.3.1 XTuning 整体架构设计…………………………………………… 87
5.3.2 内部专家规则模块实现… ……………………………………… 88
5.3.3 外部专家规则模块实现… ……………………………………… 92
5.3.4 基于专家规则的调优算法PEKT………………………………… 95
5.3.5 LSM-tree 结构性优化的实现… ………………………………… 97
5.4 实验评估… …………………………………………………………… 99
5.4.1 实验环境设置… ………………………………………………… 100
5.4.2 训练时间开销评测… …………………………………………… 100
5.4.3 吞吐性能评测… ………………………………………………… 101
5.4.4 延迟影响评测… ………………………………………………… 102
5.4.5 键值存储系统内部I/O 评测分析………………………………… 103
5.5 本章小结… …………………………………………………………… 105
第6 章 基于LSM-tree 键值存储的知识图谱系统优化…………………… 107
6.1 引言… ………………………………………………………………… 107
6.2 问题描述… …………………………………………………………… 108
6.2.1 邻域查询性能… ………………………………………………… 108
6.2.2 基于NVM 的图谱加速优化……………………………………… 108
6.2.3 相关研究… ……………………………………………………… 109
6.3 基于LSM-tree 键值存储系统的知识图谱查询加速系统… ………… 112
6.3.1 提升邻域查询性能… …………………………………………… 112
6.3.2 面向知识图谱应用的键值存储引擎优化… …………………… 113
6.3.3 面向分布式知识图谱的Raft 优化… …………………………… 115
6.4 实验评估… …………………………………………………………… 116
6.4.1 实验环境设置… ………………………………………………… 116
6.4.2 吞吐性能测试… ………………………………………………… 117
6.4.3 平均延迟性能测试… …………………………………………… 118
6.4.4 尾延迟性能测试… ……………………………………………… 119
基于日志结构合并树的键值存储系统优化研究
6.4.5 可扩展性测试… ………………………………………………… 120
6.5 本章小结… …………………………………………………………… 121
第7 章 总结与展望… ……………………………………………………… 123
7.1 主要研究内容与成果贡献… ………………………………………… 123
7.2 未来的研究计划… …………………………………………………… 126
参考文献………………………………………………………………………… 127
|
內容試閱:
|
在大数据时代,非结构化数据的存储和数据密集型应用成为学术界和工业界共同关注的研究方向。键值存储凭借简单、高效的数据模型和优异的水
平扩展性能,成为替代传统数据库存储引擎的首选方案。随着云计算、虚拟化的兴起,数据应用的服务质量成为衡量存储系统性能的一个重要指标,直接影响用户的体验。因此,键值存储系统存在的性能抖动和尾延迟现象成为提升服务质量需要解决的关键问题。本书主要研究基于日志结构合并树(LSM-tree)的键值存储系统的性能优化问题,具体包括以下内容:优化LSM-tree 合并机制,减少写放大以提升写入性能,构建自适应LSM-tree 结构以进一步动态改善读写性能和尾延迟问题,以及构建基于相关性的键值存储自动调优系统以实现对LSM-tree 键值存储系统更全面的优化。本书的主
要研究内容如下。
(1)面向新硬件的LSM-tree 写性能优化的合并机制研究
随着社交网络、自媒体的兴起,应用场景逐步从读密集型向写入密集型转变。基于LSM-tree 的键值存储系统在分层结构上天然地适用于写入密集
型的应用。随着写入数据规模的不断增大,LSM-tree 键值存储系统需要对磁盘的数据文件进行不定期的合并重组,以实现数据更新和空间回收。在实
际的合并过程中,仅有部分数据需要合并更新,但涉及的所有数据文件都需要经历“载入- 合并- 写回”的过程,这样在合并过程中就产生了严重的写
放大问题。写放大问题不仅影响系统的吞吐能力,而且会削减SSD 等新型存储硬件的使用寿命,成为键值存储系统在性能和成本方面急需解决的具有
挑战性的问题。
为了解决这个问题,本书提出了一种新的LSM-tree 底层驱动合并机制,并且在此基础上构建了一套新的键值读写模式。底层驱动合并机制遵循了
“推迟合并、批量处理”的核心思想,从理论上有效减少了传统合并机制的写放大问题。通过实验测试,相比传统方式,底层驱动合并机制有效地减少
了写放大问题,不仅提升了键值存储系统的写入性能,并且有效改善了系统基于日志结构合并树的键值存储系统优化研究在延迟等方面的问题。
(2)资源负载自适应LSM-tree 结构的键值存储优化
键值存储系统为了兼顾应用场景的通用性,通常会选择性能平衡、折中的结构设计。但是,实际应用负载通常是动态变化的,并且,LSM-tree 键值
存储结构对负载特征是非常敏感的,例如,读写比例与当前时刻LSM-tree的结构形态会共同影响键值存储系统吞吐和延迟等方面的性能指标。这就导致键值存储系统不仅无法充分发挥应有的访问潜能,同时也给系统资源造成了极大的浪费。
针对这个问题,本书基于RUM 扩展理论提出了自适应LSM-tree 结构,针对当前负载和系统资源情况,通过性能预测模型计算,动态改变LSMtree
形态和合并机制以实现键值存储系统的自适应优化,并在此基础上实现自适应LSM-tree 键值存储系统ALDC-DB。通过实验发现,ALDC-DB在动态混合负载下,读写吞吐性能都有进一步的提升,并且,自适应合并机制能够有效减少系统的写放大,减轻了尾延迟影响,提升了用户的服务
体验。
(3)基于强化学习的LSM-tree 键值存储自动调优系统研究
键值存储系统基于配置选项的全面调优一直是困扰使用者的一个难题,即使系统的开发者,由于应用负载场景的多变,也很难提供一套通用可行
的系统调优方案。因此,基于机器学习的数据库自动调优成为主要研究方向,其可以轻松解决海量连续的参数空间优化的问题,但是需要花费大量时
间和资源进行调优模型的离线训练,因为现有训练过程通常忽略了配置选项之间、负载间的相关性规律,成为训练过程中低效率、无价值的性能评估
采样。同时,基于LSM-tree 的键值存储系统对用户负载特征是非常敏感的,即负载的特征及当前配置参数会共同影响系统的性能表现。
针对这些问题,本书提出了一种基于强化学习的LSM-tree 键值存储自动调优系统XTuning。XTuning 利用配置选项间的相关性规则有效减少了强
化学习的模型离线训练时间,负载相关性规则和结构性优化进一步提升了键值存储系统的吞吐和延迟等性能指标,有效减轻了尾延迟的影响,提升了系
统的服务质量。
(4)基于LSM-tree 键值存储系统的知识图谱系统优化
分布式系统的高扩展性和高可用性使得在其上构建大规模知识图谱已经成为产业发展趋势。新兴的分布式图数据库更推崇采用NoSQL 等数据模型,
如键值存储作为其存储引擎,以进一步提高其可扩展性和实用性。在这种情况下,上层的图查询语言的语句会被翻译成一组混合的键值操作。
为了加速查询翻译生成的键值操作,本书提出了基于非易失性内存查询性能加速(Knowledge Graph Booster,KGB)的知识图谱系统。KGB 主要
包含:①面向邻域查询加速的NVM 辅助索引,用于降低键值存储的读取成本;②快速响应的改进Raft 算法,用于实现高效的键值存取操作;③面向
键值存储引擎的调优机制,为知识图谱存储系统获得了额外的性能提升。实验表明,KGB 能有效降低知识图谱系统的平均延迟和尾延迟的影响,实现
显著的性能提升。
本书的顺利出版要感谢恩师柴云鹏教授长期以来的关心、支持和指导,感谢太原科技大学计算机科学与技术学院院系领导的关照和支持,同时也要
感谢所有参与本书研究的各位朋友所付出的努力。由于作者学识和能力有限,不足之处在所难免,敬请读者批评指正。
|
|