目录
WHAT
RAID( Redundant Array of Inexpensive Disks ,廉价磁盘冗余阵列)。后改称独立磁盘冗余阵列( Redundant Array of Independent Disks )。
是一种高性能、高可用的多磁盘存储技术。
其初衷是为大型服务器提供高性能的存储功能和冗余的数据安全。
WHY
上个世纪90年代,受限于存储技术发展,磁盘的成本、性能、可用性都不尽人意。
一方面,大容量磁盘的成本居高不下;
另一方面,大规模集成电路的飞速发展使得CPU处理效率逐步提升,但磁盘的数据传输速率却难以大幅提高;
除此之外,普通磁盘驱动器并不提供硬件级别的容错能力,从而使得磁盘的可用性受到限制。
而RAID技术的出现,较好的解决了以上问题:
1.RAID技术降低了存储成本
RAID技术通过多个容量较小、较为廉价的磁盘进行组合,从而获得与昂贵的大容量磁盘相当的容量、性能和可靠性。从而降低了存储成本。
2.RAID技术提高了存取性能
RAID技术中,由于多个磁盘驱动器可以并行传输数据,而这若干个磁盘对外又表现为一个逻辑上的独立的磁盘驱动器。从而可以使得数据传输速率得到数倍乃是数十倍的提升。
3.RAID技术提供了容错机制
RAID 采用镜像和数据校验等数据冗余技术,保证了阵列中即使有磁盘出现损坏,仍能利用校验冗余信息对数据进行校验和纠错。从而大幅的提升了数据可用性和可靠性。
上述特点,也正是RAID技术取得成功的原因。
HOW
RAID技术的基本思想是将多个容量较小、相对廉价的磁盘进行有机组合,从而以较低的成本获得与昂贵的大容量磁盘相当的容量、性能、可靠性。
关键技术
1.磁盘镜像(Disk Mirroring)
磁盘镜像是指将一个磁盘驱动器中的数据复制到相同功能的存储装置中,以起到增强数据完整性。
优点:实现了容错功能。当主磁盘驱动器发生故障时,由于有备份磁盘的存在,在进行切换后主机仍能正常工作。
缺点:磁盘镜像虽然实现了容错功能,却使磁盘的利用率降至50%,也未能使服务器的磁盘I/O速度得到提高。
2.数据条带化(Data Striping)
数据条带化是指利用条带化技术,把一段连续的数据分割成相同大小的数据块,并将其分别写入到阵列中的不同磁盘上。
优点:数据条带化技术将数据以块的方式分布存储在多个磁盘中,使得多个进程可以并发的访问磁盘。从而获得了数倍乃至数十倍的性能提升。
缺点:由于数据条带化技术并不原生具有容错机制,任何一个数据条带损坏都会导致整个数据不可用,采用数据条带化技术反而增加了数据丢失的概率。
3.数据校验(Data validation)
数据校验是一种冗余技术,它用校验数据来提供数据的安全,可以检测数据错误,并在能力允许的前提下进行数据重构。
优点:数据校验提供了较高的可用性和容错性。当磁盘中部分数据出错时,可以通过对剩余数据和校验数据进行反校验计算重建丢失的数据。而且数据校验相比磁盘镜像,大幅的缩减了冗余开销。
缺点:引入数据校验机制后,由于每次数据读写都要进行大量的校验运算,所以会在一定程度上影响性能。
海明校验码(Hamming Code Check)和异或校验(XOR Check)是两种最为常用的数据校验算法。
<