本文是对3个月前临时出差前往客户现场,安装交付我司大数据产品时使用的一项硬件级的灾备技术的简要复盘。
1 独立磁盘阵列——RAID:概述
1.1 定义
RAID
:= Redundant Arrays of Independent Disks / RAID
:= 独立冗余磁盘阵列
:= 独立磁盘构成的具有冗余能力的阵列
1.2 RAID分级
- RAID0
RAID0:=条带化:=Data Stripping数据分条技术
磁盘利用率 = 100%
没有提供冗余或错误修复能力,但实现成本最低
- RAID1
RAID1:=磁盘镜像:=把一个磁盘的数据镜像到另一个磁盘上
磁盘利用率 = 50%
通过二次读写实现磁盘镜像
磁盘控制器的负载也相当大,尤其是在需要频繁写入数据的环境中
为了避免出现性能瓶颈,使用多个【磁盘控制器】就显得很有必要
RAID控制器 [软件]
:= 一种硬件设备或软件程序
:= 用于管理计算机或存储阵列中的硬盘驱动器(HDD)/固态硬盘(SSD),以便它们能如逻辑部件一样工作,各司其职
:= 一般是集成在主板里面的, 家庭用户普通用户才用主板上的集成RAID控制器
RAID(控制)卡 [硬件]
:= 独立的PCI接口的扩展卡
:= 性能和稳定性要强于集成在4102主板上的控制器
:= 一般机房或者网吧用来做服务器的主机都用RAID卡组磁盘阵列
- RAID2
RAID2 := 带海明码校验
将数据条块化分布于不同的硬盘上, 条块单位为位或字节
-
RAID3
RAID3:= 带奇偶校验码的并行传送 -
RAID4
RAID4 := 带奇偶校验码的独立磁盘结构
- RAID5
RAID5 := 分布式奇偶校验的独立磁盘结构
- RAID10
RAID10 := RAID1 + RAID0 := 一个Raid 1与Raid0的组合体 := 利用奇偶校验实现条带集镜像
RAID 1 = 一个冗余的备份阵列
RAID 0 = 一个负责数据的读写阵列
2 实际应用
实际应用中,RAID5和RAID10使用较多。
安全性: RAID5 < RAID10
读写性能: RAID5 ≈ RAID10
连续写性能: RAID5 > RAID10
前提条件: 假定RAID5有写Cache存在,且算法无误
空间利用率: RAID5(0.75) > RAID10(0.5)
3 RAID实操
一般地,服务器制造商会提供RAID技术的解决方案。
(参见本文的推荐文献,尤其第1/2/3篇)