基于内核的分布式Key/Value存储系统设计与实现

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:zhuchao2549
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
大数据是由数量巨大、结构复杂、类型众多的数据构成的集合。大数据的来源广泛,除了互联网这一众所周知的大数据源,最大的数据源实际上是实体行业,如电信、零售、制造、电力等行业。大数据背后蕴藏着巨大信息,为此,需要高效地将大数据进行存储和管理,以便需要时对其进行挖掘和提炼。在大数据当中,非结构化数据(如文本)、半结构化数据(如网页、日志)占据了很大比例,以OracleDatabase、MySQL为代表的传统关系型数据库不适合用于大数据的存储和处理,从而催生了NoSQL系统。  NoSQL系统相比关系型数据库具有更高的性能,然而,随着数据量逐渐增大,已有的NoSQL系统同样在性能和可扩展性方面遇到了问题。通过对主流NoSQL系统进行分析,本文认为其存在以下问题:采用传统多线程模型,对多核CPU的利用率不高;采用传统的索引结构,不支持并发访问;对存储空间的管理不高效;访问接口不高效;采用集中式的元数据管理方式,制约了集群的扩展能力。总之,已有NoSQL系统存在许多不足,难以满足OLTP对高并发、低延迟、高可扩展的数据存储的需求。  本文从操作系统层面对NoSQL系统进行改进,提出了基于Linux内核的分布式Key/Value存储系统KStore。本文从两个层面展开了研究:  (1)在存储引擎层面,研究了内核态的请求处理模型和存储模型。实现了基于内核多线程的并发处理机制,基于系统调用的高效Key/Value访问接口,以及基于内存、SSD和磁盘的分层存储机制。最终完成了基于Linux内核的高并发、低延迟的Key/Value存储引擎。  (2)在分布式系统层面,研究了去中心化的集群架构。为了提高系统的可扩展性,设计了非集中式的元数据管理机制,实现了提高系统可用性的技术,包括多副本、一致性、负载均衡以及节点失效处理。最终完成了可扩展、高可用的分布式Key/Value存储系统。  本文通过多组实验,分别对KStore的实时性、并发性进行了测试和分析。实验结果表明KStore的各项指标均优于主流Key/Value存储系统,证明了KStore关键技术“内核态运行”、“分层存储”和“去中心化”的有效性。
其他文献
该文所做的工作是从地下水资源利用的角度,对国家863项目"农业专家系统开发平台"中的子项目"农业测土空间数据库(SESD)"的进行水利条件方面的完善与补充.以农安县为示范区,对
嵌入式实时软件有着广泛而关键的应用,但描述和检测嵌入式实时软件的需求却是一项十分困难而复杂的工作.针对这一现象,该文提出了一种基于需求规格说明的原型化方法,该方法集
虚拟现实技术应用于系统仿真是当前仿真技术的研究热点.该文首先分析了作为系统仿真的重要部分——仿真软件和仿真语言的不足,针对当前虚拟现实技术在视景仿真上的优势,提出
多媒体流量控制技术提高了流媒体在传输过程中的有效性,并且部分解决了现有网络带宽问题.流媒体是指采用流式传输方式在互联网上播放的媒体格式,譬如音频、视频或多媒体文件
软件质量问题由来已久,由于在许多关键领域运行的软件质量问题而引发重大损失甚至灾难并不少见.计算机科学家普试图用完全形式化的方法来证明程序同功能规约的一致性,保证程
近年来,计算机领域内新的技术不断涌现,象集群技术,策略的管理技术,网络技术等等.这些技术使高可用性系统的实现成为可能,而且越来越完善.该文作者参加了一个高可用性系统的实现成
如今物联网技术越来越广泛地应用到各行各业中,针对电梯行业中的安全问题,将物联网等先进技术应用其中,设计一套具备音视频实时传输功能的监控系统,对于当电梯出现故障时、有乘客
Agent组织是多Agent系统研究的重要问题之一,也是多Agent系统一种有效的求解方式.针对Agent组织研究工作存在的主要问题,该文主要研究了Agent组织的模型.形式语义、组织的承
该文深入分析了ebXML的体系结构,并通过与其他基于XML进行电子商务的规范如BizTalk、cXML、RosettaNet和cnXML相比较,指出ebXML具有更好的开放性,特别适合于不同规模和不同行
该课题的提出是因为第二炮兵某研究所在进行导弹仿真系统研制过程中,需要涉及大量战区、目标区等的显示与标绘,专题图的生成与保存等问题,由于目前国内外的GIS产品大部分都是