存储
RAID基本概念
-
RAID:Redundant Array of Independent Disks
- 独立硬盘冗余阵列,也可称为RAID
-
高效的数据组织:条带化和并行访问
-
数据保护:奇偶校验和热备用
-
实现方法:硬件RAID、软件RAID
-
RAID技术出现的初衷是把多个小容量的硬盘组合起来,以获得更大的存储容量。当前我们所说的RAID技术更多则是与数据保护相关,换言之,当物理设备失效时,RAID能够用来防止数据的丢失。
-
RAID技术的主要功能:
- 通过对硬盘上的数据进行条带化,实现对数据成块存取,减少硬盘的机械寻道时间,提高了数据存取速度。
- 通过对一阵列中的几块硬盘同时读取(并行访问),减少了硬盘的机械寻道时间,提高了数据存取速度。
- 通过镜像或者存储奇偶校验信息的方式,实现了对数据的冗余保护。
-
随着阵列技术的发展,已经产生了很多不同类型的RAID,但现在只有少数几种RAID仍在使用。在这个章节中,我们将讨论最常用的RAID类型,也会学习RAID的其它相关功能,比数据保护等,同时,选择不同的RAID类型意味着不同的性能/成本。
-
在存储设备中,可以通过2种方式实现RAID功能:硬件RAID和软件RAID。
- 硬件RAID使用专用的RAID适配器、硬盘控制器或存储处理器。RAID控制器有自己的处理器,I/O处理芯片,和内存,用来提高资源利用率和数据传输速度。RAID控制器管理路由、缓冲区,控制主机与RAID间数据流。硬件RAID通常在服务器中使用。
- 软件实现的RAID没有它自己的处理器或I/O处理芯片,而是完全依赖于主机处理器。因此,低速CPU不能满足RAID实施的要求。软件RAID通常在企业级存储设备上使用。
RAID数据组织形式
- 条带(strip):硬盘中单个或者多个连续的扇区构成一个条带,它是一块硬盘上进一次数据读写的最小单元。条带是组成分条的元素。
- 分条(stipe):同一硬盘阵列中的多个硬盘驱动器上的相同“位置”(或者说相同编号)的条带。
- 分条宽度:指在一个分条中数据成员盘的个数。
- 分条深度:指一个条带的容量大小。
- 扇区构成条带,条带组成分条。
RAID数据保护方式
- RAID技术通常有2种不同的方式进行数据保护。一种方法是在另一块冗余的硬盘上保存数据的副本。二是使用奇偶校验算法。奇偶校验码是使用用户数据计算出的额外信息。对于使用奇偶校验的RAID类型,它意味着需要额外的校验硬盘。奇偶校验采用的是异或(XOR的计算符号⊕)算法。
- 异或输出表
输入A | 输入B | A⊕B |
---|---|---|
0 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 0 |
常用RAID级别与分类标准
- RAID技术将多个单独的物理硬盘以不同的方式组合成一个逻辑盘,提高了硬盘的读写性能和数据安全性,根据不同的组合方式可以分为不同的RAID级别。
- RAID技术的优势体现在如下的几个方面:
- 把多个硬盘组合成一个逻辑盘组,以提供更大容量的存储。
- 将数据分割成数据块,对多个硬盘并行进行写入/读出,提高硬盘访问速度。
- 通过提供镜像或奇偶校验来提供容错。
创建RAID组成员盘要求
- 硬盘容量大小 相同
- 硬盘接口类型 相同
- 硬盘速率要求 相同
热备盘(Hot Spare)
-
热备(Hot Spare):当冗余的RAID阵列中某个磁盘失效时,在不干扰当前RAID系统正常使用的情况下,用RAID系统中另外一个正常的备用磁盘顶替失效磁盘。
-
热备通过配置热备盘实现,热备盘分为全局热备盘和局部热备盘。
-
热备盘要求和RAID组成员盘的容量,接口类型,速率一致,最好是采用同一厂家的同型号硬盘。
-
当坏盘出现后,服务器会报警,人工可以手动将坏盘替换出来,当插入好盘的时候,RAID控制器会根据XOR,将的三块盘的信息在后台算出来,然后写入新的硬盘。有些RAID控制系统会用NVRAM来存放阵列信息,因此和整列相关的条带化数据也会重新分配到新盘上,这些工作都对用户和应用程序来说都是透明的,用户可能会感受到的就是系统会因为在后台底层进行条带数据的重新分配而带来的服务器响应延迟。
-
当然,如果条件允许,用户也可以强制作重新分配,当然是在维护停机时间内操作。
-
但是由于XOR的限制和RAID 5这个级别的限制,如果连续两个盘出现了问题,呢么整个盘阵中的数据就完蛋了,系统也会不可用。
-
特别是那些无人值守的机房,RAID 5中死掉一个盘,没有关系,如果他们比较倒霉,在管理人员没有更换坏盘的时候,第二个硬盘也死掉了,那么就都完蛋了。
Hot-Spare盘就是一个不参与盘阵的,但是加电上线的盘,一点RAID 中的盘出现问题,它都可以自动的替换进入盘阵,你可以把它想象成一个"自动换盘"的概念。 -
硬盘数量的话,就需要多一块,比如raid1需要两块盘,做热备的话就需要3块盘了,但使用的依然是2快,剩下一块随时准备替换使用中的2快中坏了的盘。
RAID 0的工作原理
- 在所有RAID级别中,RAID 0(也被称为条带化RAID)具有最高的存储性能。