论文部分内容阅读
随着云计算技术的不断发展和大数据应用的兴起,数据量呈现出爆炸式增长,海量数据的存储需求,为构建分布式存储系统带来了新的挑战。为了保证数据的高可靠性及高可用性、降低存储系统中数据的访问成本、减少系统的维护开销,本文从基于纠删码的数据容错方法、重复数据删除中数据可用性优化方法、副本放置算法以及副本一致性维护策略等几个方面展开深入的研究。主要的工作及创新点如下:1.提出了一种单数据盘故障快速修复方法。纠删码作为一种数据容错技术,能够在保证数据可靠性的同时,减少存储开销,被广泛应用在大规模的分布式存储系统中。作为纠删码的一种,Liberation具有编码速度快、数据更新效率高的优点。但是其在对丢失的数据进行恢复时,存在所需要读取的数据量大、修复效率不高的问题。针对这一问题,本文提出了一种单数据盘故障快速修复方法。该方法在数据恢复的过程中综合考虑使用P校验集合和Q校验集合来对失效数据盘进行修复操作。实验表明,提出的方法能够减少从磁盘读取的数据量,缩短磁盘I/O时间,加快数据恢复过程。2.提出了一种重复数据删除中数据可用性优化方法。在存储系统中采用重复数据删除技术减少数据存储开销,但会带来数据可用性问题。为了解决这一问题通常采用纠删码和副本技术,为数据增加冗余信息。本文从副本方面入手,以数据块的引用数量和访问频率来度量数据块的重要程度,根据数据块的重要程度不同,为数据块增加副本。在增加副本数量方面,采用拉格朗日乘数法,以存储空间为约束条件,数据块可用性代价函数为目标函数构建拉格朗日函数。并对拉格朗日函数进行求解,得到的值即为所需的数据块副本数量。实验表明,提出的方法提高了数据的可用性。3.提出了一种基于萤火虫优化算法的副本放置方法。采用副本技术后,副本放置不仅影响用户的访问效率,也会影响系统的整体开销。现有的副本放置算法仅考虑了部分影响因素,如网络带宽的使用率、副本放置节点和用户之间的距离、用户访问副本的代价等。本文综合考虑以上因素,提出一种基于离散型萤火虫优化算法的副本放置方法。该算法通过建立数学模型,计算萤火虫位置的适应度函数,得到萤火虫个体的荧光素值,并且个体朝着荧光素值最大的方位移动,进而得到副本放置的合适节点。该副本放置算法收敛速度快,能够降低用户访问数据的开销和响应时间。4.提出了一种基于树形拓扑结构的副本一致性维护策略。存储系统中通常采用副本技术来保证数据的可用性、提高数据访问效率、均衡系统负载。但是在采用副本技术后,对数据进行更新操作时,不可避免地带来数据不一致性问题。针对这一问题,提出了副本一致性维护策略。通过引入Piconet和master-slave概念,对网络拓扑结构进行更细致的划分,对其中的master节点构建一致性树,并采用push-adaptive pull方法传递更新消息。实验表明,该策略能够在进行副本一致性维护的同时,减少更新消息传播的开销。综上所述,本文从以上四个方面进行了深入的研究,为构建高可靠、高可用、高性能的云计算环境下分布式存储系统进行了有益的探索。