RAID 0连续以位或字节为单位进行分割数据,将数据分段存储在各个硬盘中,n块硬盘并行读/写数据,因此具有很高的数据传输率,可以达到单个硬盘的N倍,但它没有数据冗余;
RAID 0只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据,因此并不能算真正的RAID结构;
RAID 0不能应用于数据安全性要求高的场合。
通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据;
当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1 可以提高读取性能;
RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时, 系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。
N(偶数)块硬盘组成镜像,容量为N/2
N (N>=3) 块盘组成阵列,一份数据产生N-1个条带,同时还有1份校验数据,共N份数据在N块盘上循环均衡存储
N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高;
(N-1) /N磁盘利用率(有一块是用来校验的);
可靠性高,允许坏1块盘,不影响所有数据。
N (N>=4) 块盘组成阵列,(N-2) /N容量利用率;
与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块;
两个独立的奇偶系统使用不同的算法,即使两块磁盘同时失效也不会影响数据的使用;
需要更大的磁盘空间,相对于RAID 5有更大的“写损失"因此写性能较差。
N (偶数,N>=4)块盘两两镜像后,再组合成一个RAID 0;
N/2磁盘利用率,使用率低;
N/2块盘同时写入,N块盘同时读取;
性能高,可靠性高。
读写性能与RAID 1+0相同;
安全性低于RAID 1+0;
使用较少。
阵列卡是用来实现RAID功能的板卡,通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列组件构成的
不同的RAID卡支持的RAID功能不同: 例如支持RAID0、RAID1、 RAID5、 RAID10等
RAID卡的接口类型:
IDE接口(并行接口,价格低廉,兼容性强)
SCSI接口(串行接口,是小型计算机系统接口,广泛应用于小型机上的高速数据传输技术,支持热拔插,CPU占用率低,但是价格高)
SATA接口(串行接口)
SAS接口(新一代scsi接口,向下兼容SATA)
缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,再由缓存和外边数据总线交换数据。
缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素,大缓存可以提高命中率
不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等。
1.为Linux服务器添加4块SCSI硬盘
2.使用mdadm软件包,构建RAID10磁盘阵列,提磁盘存储的性能和可靠性
步骤说明:
检查是否安装mdadm,准备用于RAID阵列的分区
为Linux服务器添加4块SCSI硬盘,并使用fdisk工具各划分出一块20GB的分区,依次为:/dev/sdb1、/dev/sdc1./dev/sdd1、/devsde1
将其类型ID更改为“fd",对应为“Linux raidautodetect”,表示支持用于RAID磁盘阵列创建RAID设备
创建raid10 (先做镜象,再做条带)
mdadm -Cv /dev/md0 -l1 -n2 /dev/sd[bc]1
mdadm -Cv /dev/md1 -l1 -n2 /dev/sd[de]1
mdadm -Cv /dev/md10 l0 -n2 /dev/md0/dev/md1
vim /etc/mdadm.conf
mdadm --detail --scan >> /etc/mdadm.conf 进行扫描