论文部分内容阅读
随着信息技术的发展,数据规模呈爆炸性增长。为了满足数据存储的需求,大量数据中心被建立来存储数据。这些数据中心由大规模的存储集群构成,它们使用成千上万台大容量的服务器/个人计算机节点来存储数据并提供在线,近线或离线服务。在如此大规模的系统中,失效(扇区错误,磁盘故障,节点不可用,机架停运和数据中心灾难等)成为经常性事件,而失效事件可能导致数据丢失。因此数据中心存储系统采用各种保护技术来防止失效发生时可能造成的数据丢失,如副本、快照、连续数据保护、纠删码等。其中纠删码具有高存储效率、低成本、高容错、高可靠性的特征,是现在研究的热点。然而,尽管纠删码有极其明显的成本优势和可靠性优势,但也带来高恢复开销、高降级读延时、高编解码开销等问题,从而导致系统性能降级。因此,提高纠删码的实际性能有重要的研究意义和广泛的应用价值。 本文对现有纠删码存储系统进行分析和测试,以减少纠删码存储系统的恢复开销、降低系统的访问延时、提高系统的服务能力为目标,研究高效纠删码存储系统中的若干关键技术,提出一系列新颖的设计思想和解决方案。 具体来说,本文主要创新工作体现在下面三个方面: 1.路径选择恢复策略。纠删码被设计并被广泛部署在磁盘阵列或存储集群中来保护数据,防止磁盘或节点失效造成的数据丢失。虽然纠删码往往具备容多个磁盘/节点失效的能力,但单个磁盘/节点失效的概率占主导地位。该研究从磁盘阵列或存储集群的单盘失效问题入手。发现在一些纠删码中,当单盘失效时,存在多条恢复路径来恢复失效盘。不同的恢复路径会造成不同的I/O开销,因此所选择的恢复路径会极大地影响整个存储系统的性能。基于此现象,路径选择恢复策略(简称PDRS)被提出。该策略的核心是在X-code和P-code等垂直RAID-6编码中先计算得到一条最优的恢复路径,然后具体执行相应恢复过程。该方法的正确性得到验证,同时给出了具体的实现算法。在此基础上,建立理论模型和真实原型系统来评估性能。理论和实验结果都表明,PDRS可以有效的减少I/O开销和恢复时间,从而减少失效窗口和竞争窗口,达到提高系统可靠性,减少系统降级时间,提高系统服务能力的目的。 2.本地解码优先策略。在一些基于纠删码的分布式系统中,会遭受并发性节点故障带来的降级读问题,从而影响系统性能。在传统的集中式解码方法中,为了响应降级读请求,会有大量额外的数据在网络上传输,占用大量的网络带宽,从而极大的影响系统的性能和服务能力。为了解决这个问题,本地解码优先策略(简称LDF)被提出。该方法的核心是通过挖掘存储节点的本地计算能力,尽量在本地存储节点多进行计算,然后只把中间结果通过网络传输给解码节点,从而显著减少网络传输I/O,并进一步减少用户访问延时,提高系统吞吐率。该研究建立了数学模型来评估并发性节点故障下的降级读概率和降级读开销。结果表明并发性节点故障下的降级读开销很大并会造成大量的网络传输,从而为该研究提供了背景支持。此外还使用理论模型和真实实验来衡量LDF策略的有效性,结果显示LDF显著的减少了网络传输I/O和平均访问延时,并显著的提高了系统吞吐率。 3.拆分和并行矩阵算法。该研究从一个新的角度对纠删码进行划分,把纠删码划分为对称校验编码和非对称校验编码。发现针对各种不同失效类型设计的新型非对称校验编码相对于传统对称校验编码有性能和成本优势。但这些新型的非对称校验编码仍然采用传统的校验矩阵方法执行编解码操作。该方法是串行的,且会产生很高的计算开销,从而占用过多的CPU资源并造成低编解码性能。为了解决这个问题,拆分和并行矩阵算法(简称 PPM)被提出。该算法的核心是通过拆分校验矩阵、并行编解码操作、同时优化计算顺序,来达到降低计算开销,加速编解码过程的目标。该研究建立了理论模型来分析编解码操作的计算开销,结果表明PPM算法可以有效的减少编解码操作的计算开销。此外该研究还在真实系统中测试了PPM算法的性能,实验结果表明PPM算法可以显著地加速编解码过程。 上面提出的这些理论和方法贯穿于纠删码存储系统性能研究的各个方面。包括磁盘失效重构技术的研究、分布式存储系统中的降级读研究和纠删码编解码过程的优化研究。此外,为了验证这些方法的有效性,众多工作负载、原型系统和真实实现被部署来进行大量的实验测试。结果表明这些新理论和新方法是可行且高效的。