版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据保护: RAID,第3章,Data Protection: RAID,- 2,目标:,完成本章学习后,能够: 描述什么是RAID和它需要解决什么 描述建立在RAID上的概念 定义和比较RAID 级别 根据性能和可用性的要求,推荐RAID级别 解释影响磁盘性能的因素,Data Protection: RAID,- 3,为什么要用RAID,由于单一磁盘所固有的缺陷,它并不能满足人们对性能需求。 在机械磨损、机械损伤等其他环境因素的影响下,硬盘驱动器(HDD)非常容易发生故障,并导致数据的丢失。 单个磁盘容量有限,且有生命期有限 由平均故障间隔时间评估 比如 如果一个磁盘的MTBF 是750,0
2、00小时, 对于包含100 磁盘, 其MTBF 是750,000 / 100, 或 7,500 小时。,Data Protection: RAID,- 4,为什么要用RAID,RAID 被用于解决这个问题 RAID是一种将多块磁盘形成一个有机整体,使之能够在硬盘故障时提供数据保护的技术。一般来说,RAID也能通过数据并发地存储到多个磁盘上提高存储系统的I/O性能。 1987年,加州大学伯克利分校的Patterson、Gibson和Katz等人发表了一篇题为冗余磁盘阵列(RAID)的一个示例(A Case for Redundant Arrays of Inexpensive Disks)的论文
3、。该论文描述了如何利用许多小容量的廉价磁盘替代当时在大型机中广泛采用的大容量磁盘。为体现存储技术的进步,RAID中的字母“I”已经从原先的“廉价”Inexpensive重定义为“独立”Independant,Data Protection: RAID,- 5,RAID的实现,RAID 有两种实现类型:硬件RAID和软件RAID 软件RAID:是基于主机的软件提供RAID的功能。它通常在操作系统层次上实现对RAID阵列的管理,而并不需要专门的硬件控制器。 和硬件RAID相比,软件RAID具有低成本和简单的优点,但它的缺点也是显而易见的: -性能:软件RAID将影响系统的整体性能,因为与RAID相
4、关的计算会带来额外的CPU开销。对于一些复杂的RAID实现,这个性能开销会更加显著。 -功能:软件RAID不能支持所有的RAID级别 -操作系统兼容性:软件RAID和宿主操作系统相互捆绑,限制数据处理环境的灵活性。,Data Protection: RAID,- 6,硬件RAID 是通过集成在主机或存储阵列上的专用硬件控制器(Controller)来实现的。不同的实现在存储阵列与主机的交互形式上有很大的不同。 - 控制卡RAID:是一种基于主机的硬件RAID实现技术。它在主机上安装一块专用的RAID控制卡,并将硬盘连接在控制卡上。控制卡和硬盘之间通过PCI总线交互。 - 外部RAID控制器:是
5、一种基于阵列的硬件RAID技术。它向主机提供了一个磁盘的接口界面,使主机看到了一个普通的逻辑卷,主机能够用它所支持的协议对卷进行管理。RAID控制器的主要功能包括: (1)磁盘聚合(Disk Aggregations)的管理与控制; (2)逻辑磁盘和物理磁盘间的I/O请求交换; (3)磁盘故障时的数据再生和恢复。,Data Protection: RAID,- 7,RAID 阵列的组成 RAID阵列(RAID Array)是一个有许多硬盘和支撑RAID功能的相关软硬件组成的封闭模块。 RAID阵列中的所有硬盘被划分为一个个独立的子模块,称之为物理阵列(Physical Array)。 每个物理
6、阵列包含固定数目的硬盘,电源等其他支持硬件。 RAID阵列中若干个硬盘所组成的子集可以构成逻辑上的联合,称为逻辑阵列(Logical Array),也叫做RAID集(RAID Set)或RAID组(RAID Group). 逻辑卷阵列由逻辑卷(Logical Volume, LV)组成,操作系统可以像RAID控制器管理物理硬盘那样识别逻辑卷。逻辑阵列中的硬盘数目是由所使用的RAID级别来决定的。通过配置,可让多个物理阵列组一个逻辑阵列,也可让一个物理阵列分多个逻辑阵列,Data Protection: RAID,- 8,RAID 阵列的组成,RAIDController,Hard Disks,
7、Logical Array,Physical Array,RAID Array,Host,Data Protection: RAID,- 9,RAID 级别 各种RAID级别是根据分条(Striping)、数据镜像以及奇偶校验技术的不同而定义的。 不同的技术对阵列的可用性和性能特征产生决定性的影响。有些RAID阵列采用其中的一项技术,而有些是多项技术的组合。 实际系统中具体采用何种RAID级别通常是由应用程序的性能及数据可用性需求所决定的。,Data Protection: RAID,- 10,分条(Striping) 一个RAID集由一组磁盘构成。将磁盘上一块由若干地址连续的磁盘块构成的、大
8、小固定的区域定义为条带(Strip)。位于RAID集所有磁盘上相同位置的条带构成了分条(Stripe)。 条带尺寸(Strip Size, 也称为分条深度,Strip Depth)描述了构成条带的磁盘块(Disk Block)数目。如果数据访问总是从条带的起始位置开始的,那么条带尺寸就等于从单个硬盘一次所能读取或写入的最大数据量,此后的读写访问将切换到下一个磁盘进行。 分条尺寸(Stripe Size) 是条带尺寸与RAID集中硬盘数量的乘积。 分条宽度(Stripe Width)是一个分条所包含的数据条带的数目。 没采用校验或镜像的情况下,RAID分条本身不提供数据保护。但,分条技术能显著提
9、高I/O性能。对不同RAID实现,可通过配置RAID控制器,使之能够在读写数据时同时访问多块硬盘。,Data Protection: RAID,- 11,数据组织:分条,Stripe 1,Stripe 2,Strips,Strip 1,Strip 2,Strip 3,Data Protection: RAID,- 12,数据镜像 镜像技术将同一数据存储在两个不同的硬盘上,从而产生该数据的两个副本。当其中一块硬盘发生故障时,另一块硬盘上保存的副本依然能幸存下来,因而控制器仍然能够利用幸存磁盘上的数据镜像对外提供服务。,Data Protection: RAID,- 13,数据镜像 当我们用新磁盘
10、替换下损坏的磁盘后,控制器会自动将幸存磁盘中的数据副本拷贝回去。而这个过程对于主机是完全透明的。 除了提供数据冗余功能外,数据镜像还能提供更快的磁盘故障恢复。它并不适用于备份,因为备份指的是保存不同时间点上的数据状态,而数据镜像则不断地将变化的数据更新到同一个副本中。 镜像操作涉及到数据复制。所需的磁盘容量为实际存储容量的2倍。因此只有在极度无法承受数据损坏的应用中才会考虑。 此外,镜像能提高读访问的性能,因为两块磁盘可以同时响应一个读请求。但是,每个写访问导致两次写硬盘操作,其写访问性能实际上会有下降。,Data Protection: RAID,- 14,奇偶校验 奇偶校验是一种既能为分条
11、RAID提供数据保护,又能避免镜像所需开销的方法。我们往分条中增加一个硬盘(分条宽度加1)来存储校验值。通过数学方法构造的校验值能够重建丢失的数据,这种冗余校验能够提供完全的数据保护,而且不需要完整的数据副本。 校验信息可以存储在RAID集中的一个单独的专用硬盘上,也可以分布在所有磁盘上。如图显示一个校验RAID。前4个标记为“D”的磁盘存储数据,而第5个标记为“P”的磁盘存储校验信息。在该图中校验信息的值为同一行各元素值的和。现在假设某一个标识为“D”的磁盘损坏了,只需要将校验值减去其他磁盘对应位置的值,就能找回丢失的数据。,Data Protection: RAID,- 15,奇偶校验,D
12、ata Protection: RAID,- 16,奇偶校验 为了简单起见,在图中将校验值表示为数据值和算术和。而真实的校验值计算采用的是位异或(Bitwise XOR)操作。校验值的计算也是RAID控制器的功能之一。 与镜像相比,奇偶校验显著降低了与数据保护相关的开销。对于一个5块磁盘组成的RAID系统,其中4块磁盘用于存储数据,第5块磁盘存储校验信息。 与镜像技术100%的额外存储开销相比,奇偶校验所需的额外磁盘开销仅为它的25%。 校验技术也有一些缺陷。由于校验信息是根据数据磁盘上的数据产生的,一旦数据改变,需要重新计算校验值。耗时的校验值计算将影响RAID控制器的性能。,Data Pr
13、otection: RAID,- 17,RAID级别,RAID 0 :无容错性的分带阵列 RAID 1:磁盘镜像 RAID 3:带专用校验磁盘的并行访问阵列 RAID 4:带独立磁盘和专用校验磁盘的分带阵列 RAID 5:带独立磁盘和分布式校验的分带阵列 RAID 6:带独立磁盘和双重分布式校验的分带阵列 嵌套的:以上RAID级别的组合:如RAID 1 + RAID 0,Data Protection: RAID,- 18,RAID 0,1,9,5,2,10,6,3,11,7,在RAID 0 中,数据是分条带存储在RAID集的各个硬盘上的,因此利用了全部的存储空间。读取数据时,控制器会将各条带
14、数据重新组合起来。 对于软件RAID,分条尺寸可以在主机上指定;而硬件RAID的分条尺寸则是由厂商指定的。,Data Protection: RAID,- 19,RAID 0,随着阵列中磁盘数目的增加,RAID 0能够并发读写更多的数据,因而性能也随之提高。 RAID 0 特别适用于那些I/O带宽需求很大的应用程序。然而,如果这些应用同时要求高可用性,RAID 0就无法提供数据保护功能以及应对磁盘故障的高可用性。,Data Protection: RAID,- 20,RAID 1,RAID 1 通过数据镜像来提升容错性。一个RAID 1组至少由两块硬盘构成。如前所述,每个写操作都同时作用在两块
15、磁盘上。 对于硬件RAID而言,此操作对主机是完全透明的。发生磁盘故障时,RAID 1的数据恢复代价是所有RAID级别中最小的。这是因为RAID控制器将利用镜像磁盘中的数据进行数据恢复,并同时继续对外提供服务。RAID 1适用于对高可用性有需求的应用。,Data Protection: RAID,- 21,RAID 1,RAID 1 通过数据镜像来提升容错性。一个RAID 1组至少由两块硬盘构成。如前所述,每个写操作都同时作用在两块磁盘上。 对于硬件RAID而言,此操作对主机是完全透明的。发生磁盘故障时,RAID 1的数据恢复代价是所有RAID级别中最小的。这是因为RAID控制器将利用镜像磁盘
16、中的数据进行数据恢复,并同时继续对外提供服务。RAID 1适用于对高可用性有需求的应用。,Data Protection: RAID,- 22,嵌套RAID,许多数据中心对RAID阵列的数据冗余和性能都有需求。RAID 0+1和RAID 1+ 0 集成了RAID 0的性能优势和RAID 1的冗余特征,将镜像和分带的优点组合起来。这类RAID需要由偶数数量的磁盘构建,且至少需要4块磁盘。,Data Protection: RAID,- 23,嵌套RAID,RAID 1+ 0 也被称为RAID 10或者RAID 1/0。 类似,RAID 0+1 也被称为RAID 01或RAID 0/1,RAID
17、1+ 0 适用于写密集、随机访问、数据量小的I/O负载,如以下这些应用: - 高事务率的在线事务处理(Online Transaction Processing, OLTP); - 大型消息服务; - 需要高I/O吞吐率、随机访问和高可用性的数据库应用。,Data Protection: RAID,- 24,嵌套RAID,人们常常误认为RAID 1+ 0 和 RAID 0+1是相同的。在正常情况下,RAID 1+0 和RAID 0+1的特征确实是相似。但对于磁盘损坏时的数据重构,它们两者存在差异。 RAID 1+0 通常被称为“分条的镜像”(Striped Mirror):RAID 1+0的基
18、本构成是镜像对。也就是说,数据是首先被镜像,然后将两个副本分别分条存储在RAID集的多个硬盘上。当替换故障磁盘时,只需要重建镜像。换句话说,阵列控制器利用镜像组中的幸存磁盘来完成数据恢复,并继续提供服务。幸存磁盘中的数据将复制到新替换的磁盘上。,Data Protection: RAID,- 25,嵌套RAID,RAID 0+1也被称为“镜像的分条”(Mirrored Stripe): RAID 0+1的基本构成是条带。这意味着数据将首先分条存储在各个硬盘上,然后再对条带生成镜像。当一块磁盘失效时,整个条带都将失效。 重建操作必须复制整个条带:从幸存条带的各磁盘中将数据复制到失效条带的相应磁盘
19、上。这将给幸存磁盘带来额外的和不必要的I/O负载,并且RAID集很容易引起二次磁盘失效。,- 26,RAID 3,RAID 3通过存储分条提供高性能,并利用奇偶校验提升容错性。它将奇偶校验信息存储在一个专用的磁盘上,因此,如果有一个磁盘损坏,数据是可以被重新构造的。 例如,5块磁盘中的4块将用于存储数据,而另外一块存储校验和。因此,总的磁盘开销将是数据磁盘的1.25倍。在RAID 3中,数据总是以整个条带为单位读写的,从而所有磁盘能够并发地执行操作,而不存在只更新同一条带中某些存储带的部分写操作。,RAID 3为传输大量数据提供了很高的带宽,因而常应用于视频流服务等涉及大量顺序数据访问的场景中
20、。,- 27,RAID 4,与RAID 3类似。RAID 4也通过存储分条提供高性能,并利用奇偶校验提升容错性。数据被分条存储在除了磁盘以外的其他磁盘上。奇偶校验信息存储在一个专用的磁盘上,以备磁盘损坏时重构数据。分带是在磁盘块层次完成的。 与RAID 3不同的是,RAID 4的数据磁盘支持独立访问。因此某个数据单元可以从单块磁盘中读写,而无需访问整个条带。RAID 4提供了很好的读吞吐率和较好的写吞吐率。,- 28,RAID 5,RAID 5 是一种适应性很强的RAID实现。它与RAID 4类似的地方在于它也采用了分条技术,而且不同磁盘上的存储带是可以单独存取的。 而两者的不同点在于它们存储
21、校验值的方法。由于RAID 4将校验值存储在一个专用的磁盘上,这就使校验磁盘成为写性能瓶颈。而RAID 5中,校验值是分布存储在所有磁盘上的,这种方法克服了校验值写性能瓶颈的缺陷。,RAID 5在消息系统、数据挖掘、中等性能的媒体服务器,以及数据库管理者(DBA)优化数据访问所用的关系数据库管理系统。,- 29,RAID 6,RAID 6的工作模式与RAID 5基本相同。但它引入了第二个校验元素以应对RAID组中的两块磁盘同时失效的情况。如此,RAID 6至少需要4块磁盘。 RAID 6也将校验值分布在所有磁盘上。由于RAID 6的写代价要比RAID 5大,因此RAID 5的写性能比RAID
22、6好。此外,由于RAID 6有两个校验集,因此它的重建操作要比RAID 5 更耗时。,- 30,- 31,RAID 对磁盘性能的影响,在选择RAID级别时充分考虑它对磁盘性能和应用程序I/O吞吐率(IOPS)的影响是至关重要的。 对基于镜像和校验的RAID系统,每个写操作都会对磁盘产生额外的I/O开销,这称之为写代价(Write Penalty)。 -对于RAID 1,每个写操作都要在构成镜像对的两块磁盘上同时进行; -对于RAID5,每个写操作都会产生4个实际I/O操作。当RAID 5阵列执行大量琐碎的写操作时,对于每次写操作,控制器都要对每个校验执行读取、计算和写回。,Data Prote
23、ction: RAID,- 32,控制器计算校验值(P):(小数据写 RAID 3 & 5) Ep = E1 + E2 + E3 + E4 (“+”为XOR操作) 每当控制器执行一次写操作,必须先从磁盘读取旧校验值(Ep old )和旧数据(E4 old),才能计算新的校验值。这意味有2次额外的读操作,新校验值的计算公式: Ep new = Ep old E4 old + E4 new,Ep new,RAID Controller,2 XOR,Ep new,Ep old,E4 old,E4 new,+,-,=,E4 old,Ep old,E4 new,RAID 对磁盘性能的影响,P0,D1,D
24、2,D3,D4,Data Protection: RAID,- 33,新校验值计算完成后,控制器分别将新数据和新校验值写入磁盘,来完成一次写操作,这其实包含了2次实际的写操作。 这样,对于每次写操作,控制器实际上总共执行了2次读、2次写,因而RAID 5的写代价为4。 对于RAID 6, 由于维护了2个校验值,一次磁盘写操作实际上需要先完成3次读操作:Ep1 old 、Ep2 old 和 E4 old。在计算出Ep1 new、Ep2 new 之后,控制器还将执行3次写操作: Ep1 new、Ep2 new 和E4 new。因此,在RAID 6中,控制器要为每次写操作执行实际6次I/O操作,其写
25、代价为6.,RAID 对磁盘性能的影响,Data Protection: RAID,- 34,在决策一个应用程序所需的磁盘数目时,应着重从应用程序所产生的I/O吞吐量(IOPS)来考虑RAID对性能的影响。总的磁盘负载可通过RAID级别以及主机所发请求中的读写比例计算出来。 下面的例子说明了在不同级别的RAID下计算磁盘负载的方法。 假设一个应用程序的I/O吞吐量为5200 IOPS,其中60%为读访问。 则RAID 5 中磁盘负载可按如下方式计算: RAID 5磁盘负载 = 0.6 X 5200 + 4 x(0.4 x 5200) (因为RAID 5的写代价是4) = 11440 IOPS
26、而RAID1中磁盘负载的计算如下: RAID1磁盘负载 = 0.6 x 5200 + 2 x(0.4 x 5200) (因为RAID 1的每个写操作将导致两次磁盘写) = 7280 IOPS,应用程序的IOPS与RAID配置,Data Protection: RAID,- 35,求出的磁盘负载将决定应用程序所需要的磁盘个数。假设上例中的应用程序所使用的硬盘的最大I/O吞吐率为180 IOPS,则在不同RAID配置下能满足该负载所需的磁盘数分别为: - RAID 5: 11440/180 = 64块磁盘; - RAID 1: 7280/180 = 42块磁盘(舍入到最接近的偶数)。,应用程序的I
27、OPS与RAID配置,Data Protection: RAID,- 36,热备用(Hot Space):指的是RAID阵列中用于临时替代RAID集中故障硬盘的备份硬盘。不同的RAID实现将执行如下之一的数据恢复方法。 - 如果采用校验RAID,则按照RAID集中的校验值和幸存硬盘上的数据重建数据; - 如果采用镜像RAID,则从存活镜像上复杂数据 当用新硬盘替换原来的故障硬盘之后,则将执行以下操作之一。 - 热备用硬盘永久性地变成了新硬盘。也就是说它已不再是热备用硬盘,因此必须给系统重新配置一个新的热备用硬盘。 - 当新硬盘装入系统后,将从热备用硬盘中复制数据到新硬盘中。然后热备用硬盘恢复到备用状态,准备应急替换下一个损坏的硬盘。,热备用,Data Protection: RAID,- 37,热备用硬盘必须有足够大的容量来容纳故障硬盘上的数据。有些系统配备了多个热备用硬盘以提升数据的可用性。 根据发生磁盘故障时使用方法的不同,热备用可以配置为自动的(Automatic)或用户发起的(User Initiated)。 对于自动热备用,当某个磁盘的可修复错误率(Recoverable Error Rate)超过一个预定的阈值时,磁盘子系统会自动将数据从即将损坏的磁盘复制到热备用磁盘中。如果整个过程在磁盘完全失效前完成,则磁盘子系统就会切换到热备用磁盘,并将原先的磁
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 业余课前台工作制度
- 健全人大代工作制度
- 农村执委会工作制度
- 中学体卫处工作制度
- 乡教育管理工作制度
- 五老理事会工作制度
- 办公室上墙工作制度
- 办税服务厅工作制度
- 劳动关系股工作制度
- 区信息报送工作制度
- 《健康体检超声检查质量控制专家建议(2025版)》解读
- 监狱视频管理办法
- 2025年吉林省长春市中考英语真题(原卷版)
- 市政道路施工方案投标文件(技术方案)
- ECMO最常见的并发症及防治策略
- 新疆圣雄氯碱有限公司2万吨-年废硫酸再生处理项目环评报告
- 2025年口腔正畸主治考试《基础知识》新版真题卷(含答案)
- 《矿图》教学课件
- 冒顶片帮事故培训
- 远程审方管理制度
- LY/T 3408-2024林下经济术语
评论
0/150
提交评论