论文部分内容阅读
随着计算机和互联网技术的高速发展,信息的数字化已经成为了不可逆转的潮流并深刻的改变着人类社会生活的各个方面。数字信息的广泛应用以及数据量的爆炸式增长给传统的数据存储系统提出了更高的要求。RAID磁盘阵列的出现极大的缓解了传统存储系统由于性能和可靠性不足所带来的瓶颈效应。RAID磁盘阵列通过引入冗余数据来提高系统的可靠性,冗余数据与存储数据之间需要满足一定的冗余关系,这种冗余关系被称为数据一致性,只有满足数据一致性的RAID系统才具有数据容错和恢复能力。RAID系统的一致性初始化就是使RAID系统在创建后满足数据一致性的过程。目前主流的一致性初始化方法必须要等到初始化完成后才能将LUN映射给主机服务器使用,在初始化过程中LUN将处于宕机状态。当LUN较大时初始化过程往往需要很长时间才能完成,长时间的系统宕机将严重降低RAID系统的可用性并给用户造成损失。后台一致性初始化的概念是将初始化操作放入后台进行,初始化操作不影响主机对LUN的读写。这样在LUN创建以后便可以立刻的将其映射给主机使用,消除初始化操作带来的系统宕机时间。论文首先介绍存储体系发展过程以及RAID相关的基础知识和概念,并重点分析了现有的一些后台一致性初始化方案的优缺点,在此基础上本文提出了一种基于“补零写”方式的改进后台一致性初始化方案,该方案具有以下特点:①一致性初始化在后台进行,能够做到初始化操作与主机I/O读写并行,LUN一旦创建可以立刻使用而无需等待初始化完成。②提出了一种“补零写”的分条处理方式,主机I/O写入LUN的未初始化分区时采用“补零写”方式写入数据,可以有效的提高初始化过程中主机I/O的写性能。③在初始化系统中加入主机I/O繁忙检测机制,可以有效避免一致性初始化与主机I/O相互争夺磁盘带宽的情况,可以有效提高初始化过程中主机I/O的读写性能。论文还将在Linux操作系统基础上对改进方案进行软件设计和实现。实验结果表明论文提出的改进方案在初始化过程中主机I/O性能方面较传统方案有较大的提高。