什么是磁盘阵列(关于RAID的问题)
发布网友
发布时间:2022-04-23 00:51
我来回答
共1个回答
热心网友
时间:2022-06-30 09:02
磁盘阵列技术
磁盘阵列(DiscArray)是由许多台磁盘机或光盘机按一定的规则,如分条(Striping)、分块(Declustering)、交叉存取(Interleaving)等组成一个快速,超大容量的外存储器子系统。它在阵列控制器的控制和管理下,实现快速,并行或交叉存取,并有较强的容错能力。从用户观点看,磁盘阵列虽然是由几个、几十个甚至上百个盘组成,但仍可认为是一个单一磁盘,其容量可以高达几百~上千千兆字节,因此这一技术广泛为多媒体系统所欢迎。
盘阵列的全称是:
RendanArrayofInexpensiveDisk,简称RAID技术。它是1988年由美国加州大学Berkeley分校的DavidPatterson教授等人提出来的磁盘冗余技术。从那时起,磁盘阵列技术发展得很快,并逐步走向成熟。现在已基本得到公认的有下面八种系列。
1.RAID0(0级盘阵列)
RAID0又称数据分块,即把数据分布在多个盘上,没有容错措施。其容量和数据传输率是单机容量的N倍,N为构成盘阵列的磁盘机的总数,I/O传输速率高,但平均无故障时间MTTF(MeanTimeToFailure)只有单台磁盘机的N分之一,因此零级盘阵列的可靠性最差。
2.RAID1(1级盘阵列)
RAID1又称镜像(Mirror)盘,采用镜像容错来提高可靠性。即每一个工作盘都有一个镜像盘,每次写数据时必须同时写入镜像盘,读数据时只从工作盘读出。一旦工作盘发生故障立即转入镜像盘,从镜像盘中读出数据,然后由系统再恢复工作盘正确数据。因此这种方式数据可以重构,但工作盘和镜像盘必须保持一一对应关系。这种盘阵列可靠性很高,但其有效容量减小到总容量一半以下。因此RAID1常用于对出错率要求极严的应用场合,如财政、金融等领域。
3.RAID2(2级盘阵列)
RAID2又称位交叉,它采用汉明码作盘错检验,无需在每个扇区之后进行CRC(CyclicReDundancycheck)检验。汉明码是一种(n,k)线性分组码,n为码字的长度,k为数据的位数,r为用于检验的位数,故有:n=2r-1r=n-k
因此按位交叉存取最有利于作汉明码检验。这种盘适于大数据的读写。但冗余信息开销还是太大,阻止了这类盘的广泛应用。
4.RAID3(3级盘阵列)
RAID3为单盘容错并行传输阵列盘。它的特点是将检验盘减小为一个(RAID2校验盘为多个,DAID1检验盘为1比1),数据以位或字节的方式存于各盘(分散记录在组内相同扇区号的各个磁盘机上)。它的优点是整个阵列的带宽可以充分利用,使批量数据传输时间减小;其缺点是每次读写要牵动整个组,每次只能完成一次I/O。
5.RAID4(4级盘阵列)
RAID4是一种可独立地对组内各盘进行读写的阵列。其校验盘也只有一个。
RAID4和RAID3的区别是:RAID3是按位或按字节交叉存取,而RAID4是按块(扇区)存取,可以单独地对某个盘进行操作,它无需象RAID3那样,那怕每一次小I/O操作也要涉及全组,只需涉及组中两台磁盘机(一台数据盘,一台检验盘)即可。从而提高了小量数据的I/O速率。
6.RAID5(5级盘阵列)
RAID5是一种旋转奇偶校验独立存取的阵列。它和RAID1、2、3、4各盘阵列的不同点,是它没有固定的校验盘,而是按某种规则把其冗余的奇偶校验信息均匀地分布在阵列所属的所有磁盘上。于是在同一台磁盘机上既有数据信息也有校验信息。这一改变解决了争用校验盘的问题,因此DAID5内允许在同一组内并发进行多个写操作。所以RAID5即适于大数据量的操作,也适于各种事务处理。它是一种快速,大容量和容错分布合理的磁盘阵列。
7.RAID6(6级盘阵列)
RAID6是一种双维奇偶校验独立存取的磁盘阵列。它的冗余的检、纠错信息均匀分布在所有磁盘上,而数据仍以大小可变的块以交叉方式存于各盘。这类盘阵列可容许双盘出错。
8.RAID7(7级盘阵列)
RAID7是在RAID6的基础上,采用了cache技术,它使得传输率和响应速度都有较大的提高。Cache是一种高速缓冲存储器,即数据在写入磁盘阵列以前,先写入cache中。一般采用cache分块大小和磁盘阵列中数据分块大小相同,即一块cache分块对应一块磁盘分块。在写入时将数据分别写入两个独立的cache,这样即使其中有一个cache出故障,数据也不会丢失。写操作将直接在cache级响应,然后再转到磁盘阵列。数据从cache写到磁盘阵列时,同一磁道的数据将在一次操作中完成,避免了不少块数据多次写的问题,提高了速度。在读出时,主机也是直接从cache中读出,而不是从阵列盘上读取,减少与磁盘读操作次数,这样比较充分地利用了磁盘带宽。
这样cache和磁盘阵列技术的结合,弥补了磁盘阵列的不足(如分块写请求响应差等缺陷),从而使整个系统以高效、快速、大容量、高可靠以及灵活、方便的存储系统提供给用户,从而满足了当前的技术发展的需要,尤其是多媒体系统的需要。
解析磁盘阵列的关键技术
存储技术在计算机技术中受到广泛关注,服务器存储技术更是业界关心的热点。一谈到服务器存储技术,人们几乎立刻与SCSI(Small Computer Systems Interface)技术联系在一起。尽管廉价的IDE硬盘在性能、容量等关键技术指标上已经大大地提高,可以满足甚至超过原有的服务器存储设备的需求。但由于Internet的普及与高速发展,网络服务器的规模也变得越来越大。同时,Internet不仅对网络服务器本身,也对服务器存储技术提出了苛刻要求。无止境的市场需求促使服务器存储技术飞速发展。而磁盘阵列是服务器存储技术中比较成熟的一种,也是在市场上比较多见的大容量外设之一。
在高端,传统的存储模式无论在规模上,还是安全上,或是性能上,都无法满足特殊应用日益膨胀的存储需求。诸如存储局域网(SAN)等新的技术或应用方案不断涌现,新的存储体系结构和解决方案层出不穷,服务器存储技术由直接连接存储(DAS)向存储网络技术(NAS)方面扩展。在中低端,随着硬件技术的不断发展,在强大市场需求的推动下,本地化的、基于直接连接的磁盘阵列存储技术,在速度、性能、存储能力等方面不断地迈上新台阶。并且,为了满足用户对存储数据的安全、存取速度和超大的存储容量的需求,磁盘阵列存储技术也从讲求技术创新、重视系统优化,以技术方案为主导的技术推动期逐渐进入了强调工业标准、着眼市场规模,以成熟产品为主导的产品普及期。
回顾磁盘阵列的发展历程,一直和SCSI技术的发展紧密关联,一些厂商推出的专有技术,如IBM的SSA(Serial Storage Architecture)技术等,由于兼容性和升级能力不尽如人意,在市场上的影响都远不及SCSI技术广泛。由于SCSI技术兼容性好,市场需求旺盛,使得SCSI技术发展很快。从最原始5MB/s传输速度的SCSI-1,一直发展到现在LVD接口的160MB/s传输速度的Ultra 160 SCSI,320MB/s传输速度的Ultra 320 SCSI接口也将在2001年出现(见表1)。从当前市场看,Ultra 3 SCSI技术和RAID(Rendant Array of Inexpensive Disks)技术还应是磁盘阵列存储的主流技术。
SCSI技术
SCSI本身是为小型机(区别于微机而言)定制的存储接口,SCSI协议的Version 1 版本也仅规定了5MB/s传输速度的SCSI-1的总线类型、接口定义、电缆规格等技术标准。随着技术的发展,SCSI协议的Version 2版本作了较大修订,遵循SCSI-2协议的16位数据带宽,高主频的SCSI存储设备陆续出现并成为市场的主流产品,也使得SCSI技术牢牢地占据了服务器的存储市场。SCSI-3协议则增加了能满足特殊设备协议所需要的命令集,使得SCSI协议既适应传统的并行传输设备,又能适应最新出现的一些串行设备的通讯需要,如光纤通道协议(FCP)、串行存储协议(SSP)、串行总线协议等。渐渐地,“小型机”的概念开始弱化,“高性能计算机”和“服务器”的概念在人们的心目中得到强化,SCSI一度成为用户从硬件上来区分“服务器”和PC机的一种标准。
通常情况下,用户对SCSI总线的关心放在硬件上,不同的SCSI的工作模式意味着有不同的最大传输速度。如40MB/s的Ultra SCSI、160MB/s的Ultra 3 SCSI等等。但最大传输速度并不代表设备正常工作时所能达到的平均访问速度,也不意味着不同SCSI工作模式之间的访问速度存在着必然的“倍数”关系。SCSI控制器的实际访问速度与SCSI硬盘型号、技术参数,以及传输电缆长度、抗干扰能力等因素关系密切。提高SCSI总线效率必须关注SCSI设备端的配置和传输线缆的规范和质量。可以看出,Ultra 3模式下获得的实际访问速度还不到Ultra Wide模式下实际访问速度的2倍。
一般说来,选用高速的SCSI硬盘、适当增加SCSI通道上连接硬盘数、优化应用对磁盘数据的访问方式等,可以大幅度提高SCSI总线的实际传输速度。尤其需要说明的是,在同样条件下,不同的磁盘访问方式下获得的SCSI总线实际传输速度可以相差几十倍,对应用的优化是获得高速存储访问时必须关注的重点,而这却常常被一些用户所忽视。按4KB数据块随机访问6块SCSI硬盘时,SCSI总线的实际访问速度为2.74MB/s,SCSI总线的工作效率仅为总线带宽的1.7%;在完全不变的条件下,按256KB的数据块对硬盘进行顺序读写,SCSI总线的实际访问速度为141.2MB/s,SCSI总线的工作效率高达总线带宽的88%。
随着传输速度的提高,信号传输过程中的信号衰减和干扰问题显得越来越突出,终结器在一定程度上可以起到降低信号波反射,改善信号质量的作用。同时,LVD(Low-Voltage Differential)技术的应用也越来越多。LVD工作模式是和SE(Single-Ended)模式相对应的,它可以很好地抵抗传输干扰,延长信号的传输距离。同时,Ultra 2 SCSI和Ultra 3 SCSI模式也通过采用专用的双绞型SCSI电缆来提高信号传输的质量。
在磁盘阵列的概念中,大容量硬盘并不是指单个硬盘容量大,而是指将单个硬盘通过RAID技术,按RAID 级别组合成更大容量的硬盘。所以在磁盘阵列技术中,RAID技术是比较关键的,同时,根据所选用的RAID级别的不同,得到的“大硬盘”的功能也有不同。
RAID是一项非常成熟的技术,但由于其价格比较昂贵,配置也不方便,缺少相对专业的技术人员,所以应用并不十分普及。据统计,全世界75%的服务器系统目前没有配置RAID。由于服务器存储需求对数据安全性、扩展性等方面的要求越来越高,RAID市场的开发潜力巨大。RAID技术是一种工业标准,各厂商对RAID级别的定义也不尽相同。目前对RAID级别的定义可以获得业界广泛认同的只有4种,RAID 0、RAID 1、RAID 0+1和RAID 5。
RAID 0是无数据冗余的存储空间条带化,具有低成本、极高读写性能、高存储空间利用率的RAID级别,适用于Video / Audio信号存储、临时文件的转储等对速度要求极其严格的特殊应用。但由于没有数据冗余,其安全性大大降低,构成阵列的任何一块硬盘损坏都将带来数据灾难性的损失。所以,在RAID 0中配置4块以上的硬盘,对于一般应用来说是不明智的。
RAID 1是两块硬盘数据完全镜像,安全性好,技术简单,管理方便,读写性能均好。但其无法扩展(单块硬盘容量),数据空间浪费大,严格意义上说,不应称之为“阵列”。
RAID 0+1综合了RAID 0和RAID 1的特点,独立磁盘配置成RAID 0,两套完整的RAID 0互相镜像。它的读写性能出色,安全性高,但构建阵列的成本投入大,数据空间利用率低,不能称之为经济高效的方案。
RAID 5是目前应用最广泛的RAID技术。各块独立硬盘进行条带化分割,相同的条带区进行奇偶校验(异或运算),校验数据平均分布在每块硬盘上。以n块硬盘构建的RAID 5阵列可以有n-1块硬盘的容量,存储空间利用率非常高(见图6)。任何一块硬盘上数据丢失,均可以通过校验数据推算出来。它和RAID 3最大的区别在于校验数据是否平均分布到各块硬盘上。RAID 5具有数据安全、读写速度快,空间利用率高等优点,应用非常广泛,但不足之处是1块硬盘出现故障以后,整个系统的性能大大降低。
对于RAID 1、RAID 0+1、RAID 5阵列,配合热插拔(也称热可替换)技术,可以实现数据的在线恢复,即当RAID阵列中的任何一块硬盘损坏时,不需要用户关机或停止应用服务,就可以更换故障硬盘,修复系统,恢复数据,对实现HA(High Availability)高可用系统具有重要意义。
各厂商还在不断推出各种RAID级别和标准。例如更高安全性的,从RAID控制器开始镜像的RAID;更快读写速度的,为构成RAID的每块硬盘配置CPU和Cache的RAID等等,但都不普及。用IDE硬盘构建RAID的技术是新出现的一个技术方向,对市场影响也较大,其突出优点就是构建RAID阵列非常廉价。目前IDE RAID可以支持RAID 0、RAID 1和RAID 0+1三个级别,最多支持4块IDE硬盘。由于受IDE设备扩展性的*,同时,也由于IDE设备也缺乏热可替换的技术支持的原因,IDE RAID的应用还不多。
总之,发展是永恒的主题,在服务器存储技术领域也不例外。一方面,一些巨头厂商尝试推出新的概念或标准,来领导服务器及存储技术的发展方向,较有代表性的如Intel力推的IA-64架构及存储概念;另一方面,致力于存储的专业厂商以现有技术和工业标准为基础,推动SCSI、RAID、Fibre Channel等基于现有存储技术和方案快速更新和发展。在市场经济条件下,检验技术发展的唯一标准是市场的认同。市场呼唤好的技术,而新的技术必须起到推动市场向前发展作用时才能被广泛接受和承认。随着高性能计算机市场的发展,高性能比、高可靠性、高安全性的存储新技术也会不断涌现。
现在市场上的磁盘阵列产品有很多,用户在选择磁盘阵列产品的过程中,也要根据自己的需求来进行选择,现在列举几个磁盘阵列产品,同时也为需要磁盘阵列产品的用户提供一些选择。表2列出了几种磁盘阵列的主要技术指标。
--------------------------------------------------------------------------------
小知识:磁盘阵列的可靠性和可用性
可靠性,指的是硬盘在给定条件下发生故障的概率。可用性,指的是硬盘在某种用途中可能用的时间。磁盘阵列可以改善硬盘系统的可靠性。从表3中可以看到RAID硬盘子系统与单个硬盘子系统的可靠性比较。
此外,在系统的可用性方面,单一硬盘系统的可用性比没有数据冗余的磁盘阵列要好,而冗余磁盘阵列的可用性比单个硬盘要好得多。这是因为冗余磁盘阵列允许单个硬盘出错,而继续正常工作;一个硬盘故障后的系统恢复时间也大大缩短(与从磁带恢复数据相比);冗余磁盘阵列发生故障时,硬盘上的数据是故障当时的数据,替换后的硬盘也将包含故障时的数据。但是,要得到完全的容错性能,计算机硬盘子系统的其它部件也必须有冗余。
什么是raid磁盘阵列?怎么做
RAID(独立磁盘冗余阵列)是一种数据存储虚拟化技术,将多个物理磁盘驱动器组件组合到一个或多个逻辑单元中,以实现数据冗余和/或提高性能的目的。数据以多种方式(称为RAID级别)分布在驱动器上,具体取决于所需的冗余和性能级别。不同的方案按资料分布布局以单词“ RAID”命名,后跟一个数字,例如RAID ...
分区讲解系统
"分区讲解系统是一种在展馆或展厅使用的讲解系统,也被称为团队智慧讲解系统、展厅分区讲解系统、展馆讲解系统、分区解说系统等不同称谓。它适用于讲解员向游客进行团队讲解的情况,讲解员可手持无线讲解发射器进行语音讲解,参观者无需佩戴耳机,也可以听到现场预先安装的分区扩音设备发出的声音。这种系统可实现同一场馆、多团队、多区域同时讲解,且区域间语音切换自然。技术优势包括采用RFID技术进行控制,所有安装设备的参数都可以通过无线遥控器进行控制调节。它还具有小巧轻便的主机,可迅速安装,并且分区数不受限制。这种系统普遍适用于各…团队分区讲解系统适用于讲解员向游客进行团队讲解的情况,讲解员可手持无线讲解发射器进行语音讲解,参观者无需佩戴耳机,也可以听到现场预先安装的分区扩音设备发出的声音,避免耳机对参观者造成的不适及分发和回收耳机的不便,或其他扩音设备...
什么叫磁盘阵列,怎么用
磁盘阵列(Redundant Arrays of Independent Drives,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。 磁盘阵列是由很多块独立的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。磁盘阵列还能利...
什么是磁盘阵列(关于RAID的问题)
RAID4是一种可独立地对组内各盘进行读写的阵列。其校验盘也只有一个。RAID4和RAID3的区别是:RAID3是按位或按字节交叉存取,而RAID4是按块(扇区)存取,可以单独地对某个盘进行操作,它无需象RAID3那样,那怕每一次小I/O操作也要涉及全组,只需涉及组中两台磁盘机(一台数据盘,一台检验盘)即可。从而提高了小...
磁盘阵列(RAID)的基础知识
磁盘阵列,即RAID技术,是通过多个独立磁盘组合成一个大型存储系统,提高数据处理效率和存储容量。其工作原理是将数据分割并分散到各个硬盘上,利用奇偶校验确保数据安全。不同类型的RAID(如RAID 0、1、5、6)在数据冗余、性能和安全性上有所差异。磁盘阵列的关键组成部分包括Raid卡、CPU、IO处理器、SCSI...
raid是什么?为什么要用raid?有好什么好处?
1、Raid(Redundant Arrays of Inexpensive Disks,RAID)中文名是磁盘阵列,有“价格便宜且多余的磁盘阵列”之意。原理是利用数组方式来作磁盘组,配合数据分散排列的设计,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。2、硬盘是个很脆弱的东西,它经常会坏掉。所以,为了保证服务器可靠耐用,...
什么是服务器阵列?是否就是服务器集群?RAID 0是什么?RAID 1是什么?RAID...
RAID 1:它是通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互 为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能。RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需...
磁盘阵列是什么意思? 如何组建?
从RAID 0+1名称上我们便可以看出是RAID0与RAID1的结合体。在我们单独使用RAID 1也会出现类似单独使用RAID 0那样的问题,即在同一时间内只能向一块磁盘写入数据,不能充分利用所有的资源。为了解决这一问题,我们可以在磁盘镜像中建立带区集。因为这种配置方式综合了带区集和镜像的优势,所以被称为RAID...
磁盘阵列是什么
磁盘阵列(RAID)是一种将多个机械或固态硬盘(SSD)组合起来以提高数据存储性能和可靠性的技术。磁盘阵列将数据分散存储在多个硬盘上,利用数据校验和等算法实现数据的冗余和容错,以增强系统的稳定性和数据保护。RAID可以提供不同的级别,包括RAID 0、RAID 1、RAID 5、RAID 10等,每个级别都有不同的...
什么是磁盘阵列?
磁盘阵列 1. 什么是磁盘阵列(Disk Array)? 磁盘阵列(Disk Array)是由一个硬盘控制器来控制多个硬盘的相互连接,使多个硬盘的读写同步,减少错误,增加效率和可靠度的技术。 2.什么是RAID? RAID是Redundant Array of Inexpensive Disk的缩写,意为廉价冗余磁盘阵列,是磁盘阵列在技术上实现的理论标准,其目的在于减少错误...
什么叫磁盘阵列
磁盘阵列是RAID的中文名称,也就是将多个物理磁盘组成一个逻辑磁盘。目前RAID常用的有RAID0,RAID1,RAID0+1/1+0,RAID5。我们以两个80GB的磁盘为例。RAID0是将两个磁盘连接变成一个逻辑磁盘,结果是我们得到了一个120GB的逻辑磁盘,数据是分别写在2个磁盘中的,读取时从2个盘中一起读,可以成倍...