基于RocksDB引擎的分布式存储系统设计与实现

来源 :电子科技大学 | 被引量 : 2次 | 上传用户:xdjxbzz
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着信息社会的发展,互联网进入高速发展的新时期,互联网上的数据量出现爆炸式的增长。随着数据量的快速增长,传统的关系型数据库已经无法应对当前海量数据规模的应用,因此NoSQL数据库应运而生。近些年来,对于NoSQL技术的研究从未间断,并且已经取得一定的成果,不同种类的NoSQL数据库层见迭出,包括key-value数据库、图数据库、列数据库和文档数据库等,NoSQL数据库中最重要的一个分支就是key-value数据库。数据库的存储引擎作为数据库存储系统中的重要组成结构,它的性能优劣将直接决定整个数据库存储系统的读写快慢。目前出现的写入性能极好的基于LSMTree的存储引擎LevelDB,该存储引擎使用LSM树作为存储结构,避免了大量的随机写入问题;对于特定的读,即内存中的热数据,也能达到不错的性能。Facebook维护了一个活跃的LevelDB的分支,即RocksDB存储引擎。RocksDB是在LevelDB代码基础上进行二次开发,相比LevelDB有了很多的改进,比如多线程压缩、分层自定义压缩、多个MemTable等,比LevelDB性能更好。本文主要有三个方面的工作:(1)首先概括了NoSQL技术的产生和发展,其次对存储引擎和分布式NoSQL存储的国内外研究现状进行研究,最后对当前已经存在的各类存储引擎进行对比分析,并总结各自的应用场景和优缺点。分析有极高写入性能的RocksDB存储引擎的设计原理及优良特性。(2)深入研究实现分布式存储系统需要用到的理论和相关技术,设计了一个分布式存储系统节点布局架构,该架构基能够灵活的增删数据节点,又能够快速的定位数据位置。分析RocksDB存储引擎的应用,将RocksDB存储引擎应用到分布式存储系统中,完善整个分布式存储系统的架构,设计并实现一个分布式keyvalue存储系统,保证较高的读写性能和高可用性。(3)对最终实现的分布式key-value存储系统进行深入的功能和性能测试,并对测试结果进行详细的分析,同时在性能方面与当前已经得到广泛应用的高效能key-value存储系统Redis作对比,测试结果表明本文系统在写入性能上与Redis相差不大,已经达到较好的水平,证明本文系统达到预期目标。本文基于RocksDB存储引擎成功的设计并实现了一个分布式key-value存储系统,对于存储引擎在分布式存储系统领域的应用具有良好的探索和实践意义。
其他文献
目的观察理气宽胸、通阳散结法治疗软斑块经皮冠状动脉内介入治疗(PCI)术后再狭窄病人的临床疗效,并进行生存质量评估,探讨其临床意义。方法入选住院治疗的80例PCI术成功的冠
高死亡率的急性冠脉综合征常常是由不稳定斑块的破裂而引发的,而不稳定斑块一个明显特点便是其脂质斑块含量超过30%。另外对急性冠脉综合征的临床尸检结果表明50%~70%的患者
对葶苈子在心力衰竭治疗中的利尿、正性肌力、抑制心室重构、保护心肌细胞等作用进行综述,以期为葶苈子在心力衰竭治疗中的合理使用和研究开发提供参考。
通过对贵州省松桃地区1∶5万水系沉积物测量资料进行综合处理,圈定了Pb、Zn、Cu等15种元素异常范围,依据元素地球化学特征、元素相关性及在测区的共生组合关系划分出亲铜元素
采用耐高温聚酯多元醇、4,4′-二环己基甲烷二异氰酸酯为主要原料,分别与不同的乙烯基单体进行共聚,制备了一系列具有高稳定性、无三乙胺的乙烯基单体改性水性聚氨酯(WPUA)复