论文部分内容阅读
信息爆炸时代来临使得作为主要信息存储媒介的磁盘阵列得到了突飞猛进的发展,且被广泛应用于大规模的存储系统中,但其自身也存在一些影响其性能和可靠性的问题。首先,磁盘的失效问题会导致磁盘阵列需要进行频繁的数据重构操作,而面对在线存储应用的增多和磁盘单盘容量的不断增大,这种重构操作的时间会变得非常漫长,从而使得存储系统的可用性和数据的可靠性都面临着考验,发展快速阵列重构技术势在必行。其次,面对当前不断增加的数据量和对存储性能的要求,磁盘阵列原有的容量和带宽已不适应目前的存储趋势,如何对磁盘阵列进行快速扩容也成为了一个亟需解决的问题。与此同时,随着云存储的应用发展,磁盘阵列也越来越多的被应用于多种存储场景,特别是共享存储场景。由于在共享存储场景下的磁盘阵列性能会随着前端应用的增多而导致性能下降,因此共享存储环境下的阵列优化技术也被人们也关注。鉴于此,我们分析并提出了针对磁盘阵列的重构、扩容和性能优化三个方面的优化方法。针对于目前磁盘阵列串行化重构导致的重构时间长的问题,我们提出一种采用并行重构思想的进行数据分布的RAID,称之为S2-RAID。该方法以并行化方式组织磁盘分区并创建subRAID结构,保证了磁盘失效时的数据重构流的并行无冲突I/O操作,大大缩短了重构时间。同时S2-RAID还可以在特定条件下容许多盘失效,且在多盘失效情况下,同样可以进行低粒度方式的并行重构。测试结果表明,S2-RAID可以比传统RAID重构方法缩短重构时间2-4倍,同时重构期间的前台响应性能也能得到较好的保证。而面对当前阵列扩容时间长导致的系统可靠性降低问题,提出一种采用混合式条带分布的快速阵列扩容方法,H-Scale。该方法可以大量减小扩容过程带来的数据迁移量,磁盘I/O次数以及校验更新次数。其基本思想是利用了宽度不同的条带的分布特点,将扩容前后的新老阵列映射为一个统一的RAID空间,并借助相应的映射算法,进行数据块的寻址操作。同时H-Scale可以支持多种RAID级别的扩容以及多次扩容等理想扩容方法所具备的特征。通过对实现的原型的测试结果表明,H-Scale比传统扩容方法至少缩短了50%的扩容时间,同时前端性能平均提高了20%以上。该方法在扩容时间和前端性能两方面得到了很好的均衡。考虑到共享存储环境的广泛应用,梳理了共享存储环境中磁盘阵列所面临问题并结合实际数据集进行了详细分析,提出一种RAID cache方法DROP,用于缓解阵列整体性能下降。DROP方法通过利用磁盘空闲区域构建一个RAID分布的Cache缓冲池,并结合共享存储环境下各个应用下数据访问的特点,对Cache缓冲池进行动态资源分配,用以平衡阵列整体性能,达到了很好的预期效果。通过上述三个方面的研究,针对磁盘阵列目前所面临的影响性能和可靠性的关键问题,进行了详细的分析并有针对性的提出了相应的方案,为构建高性能高可靠性磁盘阵列奠定了良好的基础。