论文部分内容阅读
大数据的“4V”特点:体量大、种类多、价值大以及处理速度快,使得原有的关系型数据库集群已难以容纳海量的结构化数据。因此,基于分布式文件系统的关系型数据库成为研究热点。基于分布式文件系统的数据库是指底层存储采用Hadoop分布式文件系统HDFS,上层采用以大规模并行处理MPP架构作为调度引擎的数据库。HDFS分布式文件系统部署于由多个独立基础设施并通过网络连接的节点组成的集群上,其中一个节点用于存储文件系统的元数据信息,其他节点用来存储文件数据,文件系统中所有的数据通过网络进行传输。目前,基于HDFS的关系型数据库在应用中还存在以下不足:1.未实现跨数据中心的功能,因而难以满足跨数据中心查询的应用需求;2.基于HDFS的数据库存储数据所采用的存储策略,使得属于同一表的数据集中存储于负载较小的节点,这种存取策略将降低遍历数据的并行效率;3.当部署HDFS的集群中存储节点发生变化时,为保证各个节点存储负载的均衡性,需进行节点间的数据迁移,且该过程涉及所有节点,迁移时间过长,因而对数据库的实时查询效率影响较大。针对上述问题,本文基于清华大学信息科学技术国家实验室搭建的Impala集群框架,结合242课题“面向关系型数据的云存储关键技术研究及验证”,从底层分布式文件系统HDFS数据存储角度,对结构化数据库的数据存储、查询以及迁移方法进行了探索性研究,并对基于HDFS的关系型数据库跨数据中心部署方法进行了实际应用测试。本文的主要工作包括:1.跨数据中心的分布式数据库Impala系统部署。将Impala系统进行跨广域网、跨地域的多个数据中心的部署。2.基于环形分布式哈希的数据存储和查询方法研究。将分布式哈希表和CHORD环结构应用于分布式文件系统数据的存储和查询中,将存储节点与数据都进行散列,并根据哈希值进行映射存储,通过对保存的元数据信息进行二分查找来定位所需数据的存储位置。3.基于环形分布式散列的数据迁移方法研究,当部署HDFS文件系统的集群新增存储节点时,其“邻居”节点的部分数据将迁移至新节点;当有存储节点失效时,该节点上存储的数据依据备份恢复到“邻居”节点进行存储。本文的创新点为:1.实现Impala系统的跨数据中心部署,提高了Impala系统的应用范围和对跨域大数据应用的支持;2.提出基于环形分布式哈希的数据存储和查询方法,利用基于分布式哈希以及CHORD环方法进行数据存储和查询,使数据均匀的散列在各个节点上,提高了数据查询的并行性,降低了查询时延;3.提出基于环形分布式散列的数据迁移方法,利用该方法进行数据迁移,减少了数据移动所的涉及节点,节省了迁移的时间,保证了数据库查询的一致性和有效性。本文将所提出的数据存储、查找以及数据迁移的方法进行仿真实验,通过与HDFS分布式文件系统原有的策略进行对比,验证了所提出方法的有效性。