我们经常听见的RAID 0、RAID 1、RAID 5之类的词语,当你听见这些词语时是不是觉得非常的懵逼,这些词语到底是什么呢?
硬盘阵列其实就是把多块独立的硬盘组合成一个容量巨大的硬盘组,利用个别硬盘提供数据所产生加成效果提升整个硬盘系统效能,并通过存储冗余数据增加容错能力。如果不组建硬盘阵列,你电脑里的两块硬盘是独立存在的,互不干涉。当你将文件存储在硬盘1时,硬盘2不进行任何干涉。
这样就有很大的弊端,如果你的电脑里有两块硬盘。当要调用的文件存放在硬盘1时,硬盘1在全力工作,硬盘2完全空闲着。当要调用的文件存放在硬盘2时,硬盘2在全力工作,硬盘1完全空闲着。除非两块硬盘中的资料都需要调用,才能有效地运用两块硬盘的性能,否则就会导致有一块硬盘空闲,造成性能浪费。
为了解决这一问题,就发明了一种可以让电脑内硬盘同步运行的东西,叫硬盘阵列。硬盘阵列在电脑中被成为RAID,将电脑里的多块硬盘组建成RAID之后,你的电脑里就只会看到一个RAID阵列盘。你可以像使用普通硬盘一样使用它。
RAID有很多等级,目前行业内公认的等级为RAID 0~7。并不是等级越高的RAID越好,不同等级的RAID仅仅是不同功能的阵列罢了。没有绝对的谁好谁坏,要根据实际使用情况和需求来选择自己要搭建的硬盘阵列等级。
接下来就跟大家讲一下不同等级的RAID之间的区别,以及不同等级的RAID工作原理及优缺点。
RAID 0其实就像学长在之前的文章里给大家讲的双通道差不多原理,RAID 0至少需要两块硬盘才能搭建。它的原理很简单,就是把一个完整的数据分成两份,放到两块硬盘里,写入的时候同时往两块硬盘里写入,读取的时候同时从两块硬盘中读取。跟双通道内存一样,带宽翻倍,速度也翻倍,这就让这个文件读取写入时间缩减到了一半。RAID 0更强大的是,你有多少块硬盘就可以翻多少倍的性能!最快当然不能超过DMI总线速度了,另外RAID 0是不能提高随机读写性能的,反而会出现随机读写性能弱于单块硬盘随机读写性能的现象。
RAID 0是所有硬盘阵列中速度最快的阵列,但也是最不安全的阵列。因为是将数据分别存储到各个硬盘里,所以有任意一块硬盘出现故障,这个文件就不能正确读取,这就导致你所有的数据全部报废了。
RAID 1阵列又被成为镜像阵列,简单地说RAID 1就是自动备份,并且是全盘实时自动备份。另外,RAID 1也是所有阵列里最安全的,由于实时备份,也就导致其空间利用率和速度是最低的。将设你的电脑里有两块1TB的硬盘,如果将两块硬盘组建RAID 1之后,你的电脑系统里只能看到1块1TB的容量,速度也是一样的速度。
RAID 2是一种利用汉明码校验的一种阵列,RAID 2的主要目的就是在RAID 0的基础上增加了数据纠错能力。RAID 2 使用一定的编码技术来提供错误检查及恢复。这种编码技术需要多个硬盘存放检查及恢复信息,使得RAID 2技术实施更复杂。由于汉明码的特点,它可以在数据发生错误的情况下将错误校正,以保证输出的正确。RAID 2的数据传送速率相当高,如果希望达到比较理想的速度,那最好提高保存校验码ECC码的硬盘,对于控制器的设计来说。没有免费的午餐,这里也一样,要利用汉明码,必须要付出数据冗余的代价,输出数据的速率与驱动器组中速度最慢的相等。
前面我们说RAID 0不安全,只要有一块硬盘损坏,数据就会报废。假设我们有两块硬盘搭建了RAID 0,这个时候我们再增加一块作为第三块,第三块硬盘里面存放了前面两块硬盘的恢复码。在前面两块硬盘中任意一块硬盘出现故障时,靠着另一块硬盘的数据加上恢复码就可以恢复丢失硬盘的数据。RAID 3的恢复码跟RAID 2上的汉明码不一样,RAID3的恢复码数据冗余要比RAID 2少得多,所以RAID3的性能非常接近RAID 0。
RAID 4跟RAID 3很像,其实就是在RAID 0基础上增加了一块恢复码硬盘,假设RAID3和RAID4都是3块数据盘加上一块恢复盘,我有一个文件,这个文件会被分成三组,分别存储到硬盘里。
RAID3就是第一组数据加上第一组数据码,写入;第二组数据加上第二组数据码,写入;第三组数据加上第三组数据码,写入。而RAID 4则是123组数据直接准备好,将123组的数据整体准备一个恢复码,再把三组数据和整体的恢复码写入。RAID 3和RAID 4的区别就是将一个数据块拆分,分开存储;校验码也是针对拆分的部分去计算的。而RAID 4是直接按区块进行存储,校验码也是直接按取款进行计算。
RAID 4其实也有缺点,三块硬盘对应一块恢复盘。当增加到五块硬盘时,还是对应一块恢复盘。数据盘越多,恢复盘的性能可能会制约整个阵列的性能。恢复盘的恢复数据块没有写完,是没有办法继续进行写入的。所以我们将每一次块硬盘的恢复码和数据码分开,也就是说每一块硬盘即是数据盘也是恢复盘,其中有一块硬盘损坏,其他硬盘加上恢复码依旧能够恢复数据。所以RAID 5阵列的性能能做到跟RAID 0相似,还增加了一块硬盘的容灾能力,也解决掉了RAID 4恢复码硬盘的瓶颈。目前民用层面,RAID 5阵列是使用最多的一种硬盘RAID。
RAID 3、4、5都只有容灾一块硬盘损坏的能力,但很多人还是担心运气背,万一同时损坏了两块硬盘怎么办?这就有了RAID 6,RAID 6的恢复码从RAID 5的一组变成了两组,这就让RAID 6有了两块硬盘的容灾能力。
RAID 7可以理解为一个独立存储的计算机,自带操作系统和管理工具,可以完全独立运行。RAID 7所有的输入输出传送都是同步进行的,可以分别控制,这就提高了系统的并行性,提高了系统访问数据的速度。并且每个硬盘都有高速缓冲存储器,自带的操作系统也可以使用实时操作芯片达到不同实时系统的要求。因为加入了高速缓冲存储器,当多个用户访问系统时,访问时间几乎为0。不过,一旦断电,高速缓冲存储器中的数据就会丢失,导致RAID 7阵列需要搭配UPS(不间断电源)一起工作。
以上就是本篇文学长,后面会给大家带来更多的软硬件知识科普文章以及数码产品独立评测文章!
,