RAID 技术使用了两个最基本的思想:
1 .数据冗余 (Data Redundancy) 即不仅保存用户的数据,还保存校验数据。当发生硬盘故障时,校验数据可以恢复损坏盘上的数据,从而提高用户数据的可用性。
2 .数据划分 (Data Striping) 这一思想使得 I/0 负载可以平均地分配到各个磁盘,从而提高 v0 访问速度。
这两种思想都是由控制软件来实现的,并且相互独立,磁盘阵列可只实现其中的一种。但更多情况下, RAID 往往把两种思想结合起来,从而既能获得较高的数据可靠性,同时又能保证较快的 I/0 访问速度。
1 .数据冗余
数据冗余是指使用部分磁盘空间来存储用户数据的备份。最简单的冗余数据形式就是 RAID 1 的镜像数据。在镜像磁盘阵列中,对于写请求,控制软件要执行两次写盘 — 一次写数据盘,一次写镜像盘。而对于读请求,控制软件选择其中一个盘读取数据。有些软件为了提高性能,会选择负载较轻的盘来实现读访问。镜像磁盘阵列的缺点是 : 实现成本相对较高。为保存和维护一个磁盘的数据量,用户不得不购买、维护和管理两块硬盘。
RAID3 、 4 、 5 使用另一种形式的冗余数据,称作校验数据。校验 RAID 并不是完全备份每个数据块,每个校验块是由一组数据块经过计算得到的。有了校验块,任何一个数据块可由组里的其它数据块计算得到。
校验数据通常取相应用户数据进行按位异或的结果。不论阵列有多少块盘构成,校验数据都只占用一个磁盘空间 . 因此由许多盘组成的大型校验 RAID ,