磁盘阵列RAID
- 2020 年 1 月 1 日
- 筆記
本文标识 : L00025
本文编辑 : 灭霸 编程工具 : redhat7 阅读时长 : 4分钟

RAID由来
Berkeley:伯克利提出:A case for Redundent Arrays of Inexpensive Disks 为RAID(廉价冗余阵列)
如今:Redundant Arrays of Independent Disks独立冗余阵列
优点和表现方式
通过磁盘并行读写,提高IO能力:
通过磁盘冗余(容错)机制来实现提高耐用性:
级别
多块磁盘组织在一起的工作方式有所不同
RAID0、RAID1、RAID2、RAID3、RAID4、RAID5、RAID6、RAID7、RAID10、RAID01、RAID50、JBOD
磁盘阵列(Redundant Arrays of Inexpensive Disks,RAID),有“价格便宜具有冗余能力的磁盘阵列”之意。
原理是利用数组方式来做磁盘组,配合数据分散排列的设计,提升数据的安全性。磁盘阵列是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。
利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。
磁盘阵列还能利用同位检查(Parity Check)的观念,在数组中任一颗硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。
RAID0条带
是组建磁盘阵列中最简单的一种形式,只需要2块以上的硬盘即可,成本低,可以提高整个磁盘的性能和吞吐量。
RAID 0没有提供冗余或错误修复能力,但实现成本是最低的。
特点:速度快,没有容错能力

RAID1镜像
ID 1称为磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件。
在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,只要系统中任何一对镜像盘中至少有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行,当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据,具备很好的磁盘冗余能力。
虽然这样对数据来讲绝对安全,但是成本也会明显增加,磁盘利用率为50%,以四块80GB容量的硬盘来讲,可利用的磁盘空间仅为160GB。
另外,出现硬盘故障的RAID系统不再可靠,应当及时的更换损坏的硬盘,否则剩余的镜像盘也出现问题,那么整个系统就会崩溃。更换新盘后原有数据会需要很长时间同步镜像,外界对数据的访问不会受到影响,只是这时整个系统的性能有所下降。因此,RAID 1多用在保存关键性的重要数据的场合。
RAID 1示意图

RAID5条带+分布校验
3块以上,利用率为(n-1)/n,有容错功能,最多可以坏一块磁盘

RAID6条带+分布校验+分布校验
5块以上,利用率为(n-2)/n,有容错功能,最多可以坏二块磁盘
RAID10镜像+条带
利用率为50%

RAID配置总结:
级别 |
RAID0 |
RAID1 |
RAID5 |
RAID6 |
---|---|---|---|---|
磁盘数 |
>=2 |
2 |
>=3 |
>=4 |
容错功能 |
无 |
有 |
有 |
较强 |
读写速递 |
最快 |
写入慢 |
较快 |
较快 |
磁盘空间利用 |
100% |
50% |
n-1 |
n-2 |