技术开发 频道

数据存储技术应用详解:RAID工作模式

  【IT168专稿】信息时代的核心无疑是信息技术,而信息技术的核心则在于信息的处理与存储。随着数据量的剧增,数据存储技术已经面临着巨大的挑战。数据存储技术方案主要有DAS(Direct Attached Storage)、NAS(Network Attached Storage)和SAN(Storage Area Network)。基于不同的数据存储技术方案主要的应用有文件存储系统和数据库系统。本文主要探讨一下数据库系统基于不同数据存储技术方案的应用,以便于加深了解不同的数据存储技术方案在不同领域中的应用。

  随着人们对信息技术的依赖度越来越高,对数据的安全性要求也就越来越高,一旦不慎丢失关键数据,可能会造成不可估量的损失,轻则辛苦积累起来的心血付之东流,严重的会影响企业的正常运作,给科研、生产造成巨大的损失。因此对数据的备份至关重要。

    1. 数据存储技术方案

  数据存储和存储管理技术最早起源于70年代的终端/主机的计算模式,当时由于数据集中在主机上,因此连接在主机上的硬盘和磁带是当时主要的存储和备份的设备。80年代以后,由于个人电脑的发展,尤其是客户机/服务器模式的出现,使得数据存储分布化。此时网络上文件服务器和数据库服务器往往是重要数据集中的地方。而客户机上也有一定量的数据,数据的分布造成数据存储管理的复杂化。而九十年代Internet的迅猛发展,也使得存储技术发生着革命性的变化。这种变化主要表现在三个方面:首先是存储容量的急剧膨胀,从而对于存储服务器提出了更大的需求;其次是数据持续时间的增加。今天Internet使网络数据必须保证每天24小时,每周7天,每年365天处于可获得状态。最后对数据存储的管理提出了更高的要求。数据的多样化,地理上的分散性,对重要数据的保护等等都对数据管理提出了更高的要求。面对这些变化,出现了网络存储(比如NAS和SAN),将存储设备从应用服务器中分离出来,进行集中管理。

  (1)DAS存储技术方案

  DAS(Direct Attached Storage-直接附加存储)是传统的数据存储技术方案,即服务器直接通过SCSI卡或HBA卡连接磁盘阵列。该方案采用总线结构,而非网格结构,使用该传统数据存储技术方案主要有高数据传输率、低延迟、高可靠性等特性。但是可扩展性不够,可连接设备受到限制,增加容量时需要停机等缺点。其示意图如下:
       


  (2) NAS存储技术方案

  NAS(Network Attached Storage-网络连接存储)即将存储设备通过标准的网络拓扑结构(例如以太网),连接到一群计算机上。NAS是以文件方式进行数据传输,通过网络映射硬盘提供存储空间。采用这种数据存储技术方案主要有可扩展性好,可以在不间断网络运行的情况下增加或设备存储,降低了网络主机的负担,便于安装,降低购买和维护成本。但是采用NAS有个明显的缺陷,就是将DAS中数据传输的瓶颈由控制卡转移到局域网上来了,也就是说在存储的局域网中除了必须处理正常的最终用户传输流外,还必须处理包括备份操作的存储磁盘请求。其示意图如下:
 


  (3)SAN存储技术方案

  SAN(存储区域网络)通过光纤通道连接到一群计算机上。在该网络中提供了多主机连接,但并非通过标准的网络拓扑。这种技术方案可以理解为一种可以容易扩容的由多台服务器共享使用多台阵列机的磁盘阵列机。SAN是以数据块的方式进行数据传输。因为SAN解决方案是从基本功能剥离出存储功能,所以运行备份操作就无需考虑它们对网络总体性能的影响。但是SAN这个技术方案成本较高,当然如果采用IP-SAN的话,成本会相应降低许多。其示意图如下:
 


  综上所述,NAS是以文件方式进行数据传输,而SAN是以数据块的方式进行数据传输,所以NAS这种存储技术方案可以应用到文件共享服务中,但是却不可以应用到例如数据库这样以数据块做为数据单位的应用中。并且NAS是共享网络资源的,所以对网络资源消耗比较大,所以如果是高速读写的系统,采用NAS这种存储技术方案就较难满足系统要求。而SAN是存储局域网,由自己的光纤设备组成,不占用公共网络资源,所以SAN支持对读写性能要求较高的系统。

  因此就大中型数据库而言推荐使用的存储技术方案是DAS或SAN。如果是数据库建设初期,考虑到成本的问题,建议使用DAS存储技术方案。待基础数据收集到一定时期,有强烈的商业智能分析(BI)的需求再平滑迁移到SAN存储技术方案,形成从OLTP(Online Transaction Processing-联机事务处理)到OLAP(Online Analytical Processing-联机分析处理)一整套的数据库应用存储系统。

  2. RAID工作模式介绍

  RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年 提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失效时不会使对数据的访问受损失而开发出一定水平的数据保护技术。RAID就是一种由多块廉价磁盘构成的冗余阵列,在操作系统下是作为一个独立的大型存储设备出现。RAID可以充分发挥出多块硬盘的优势,可以提升硬盘速度,增大容量,提供容错功能够确保数据安全性,易于管理的优点,在任何一块硬盘出现问题的情况下都可以继续工作,不会受到损坏硬盘的影响。

  (1)RAID-0工作模式

  RAID-0即Data Stripping数据分割技术。RAID-0可以把多块硬盘连成一个容量更大的硬盘群,读写数据时,将数据连续分割后同时并行的读写于多个磁盘上,因此可以提高磁盘的性能和吞吐量。但是RAID-0没有冗余或错误修复能力,成本低,要求至少两个磁盘,如果其中任何一块磁盘失效,都会影响整个数据。一般只是在那些对数据安全性要求不高的情况下才被使用。工作示意图如下:
 



 

  (2)RAID-1工作模式

  RAID-1即为磁盘镜像。把一个磁盘的数据镜像到另一个磁盘上,在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,具有很高的数据冗余能力,但磁盘利用率为50%,故成本最高,多用在保存关键性的重要数据的场合。并且RAID-1可以提高读的性能,当原始数据繁忙时,可直接从镜像拷贝中读取数据。其工作示意图如下:



 

  (3)RAID-3工作模式

  RAID-3使用一个专门的磁盘存放所有的校验数据,而在剩余的磁盘中创建带区集分散数据的读写操作。当一个完好的RAID-3系统中读取数据,只需要在数据存储盘中找到相应的数据块进行读取操作即可。但当向RAID-3写入数据时,必须计算与该数据块同处一个带区的所有数据块的校验值,并将新值重新写入到校验块中,这样无形虽增加系统开销。当一块磁盘失效时,该磁盘上的所有数据块必须使用校验信息重新建立,如果所要读取的数据块正好位于已经损坏的磁盘,则必须同时读取同一带区中的所有其它数据块,并根据校验值重建丢失的数据,这使系统减慢。当更换了损坏的磁盘后,系统必须一个数据块一个数据块的重建坏盘中的数据,整个系统的性能会受到严重的影响。RAID-3最大不足是校验盘很容易成为整个系统的瓶颈,对于经常大量写入操作的应用会导致整个RAID系统性能的下降。
 


  (4) RAID-5工作模式

  RAID-5把校验块分散到所有的数据盘中。RAID-5使用了一种特殊的算法,可以计算出任何一个带区校验块的存放位置。这样就可以确保任何对校验块进行的读写操作都会在所有的RAID磁盘中进行均衡,从而消除了产生瓶颈的可能。RAID-5的读出效率很高,写入效率一般,块式的集体访问效率不错。所以RAID-5更适合于小数据块随机读写的数据。RAID-5提高了系统可靠性,但对数据传输的并行性解决不好,而且控制器的设计也相当困难。
 


  (5)RAID-1+0工作模式

  把RAID-0和RAID-1技术结合起来,数据除分布在多个盘上外,每个盘都有其物理镜像盘,提供全冗余能力,允许一个以下磁盘故障,而不影响数据可用性,并具有快速读/写能力。RAID-1+0要在磁盘镜像中建立带区集至少4个硬盘。


  综上所述,RAID-1+0是最昂贵的一个磁盘划分方案,但是其容灾能力很强,并且读写效率也还不错。RAID-0是效率最高的磁盘划分方案,但是其容灾能力却因为没有冗余处理,所以最低。RAID-5则介于RAID-0和RAID-1之间,即保证了数据容灾能力,又提供了对数据较好的读写处理能力。但是其读写和容灾效率也是介于这两种方案之间。RAID-3对随机数据的写性能损失较大,并且灾错时对系统的性能影响也较大。

  因此对于数据库来说,如果是OLTP(Online Transaction Processing-联机事务处理)系统,则采用RAID-5磁盘划分方案。因为OLTP系统的数据块一般都比较小,随机性比较强,但是数据量却不大,而且对数据还有一定的容灾要求,所以采用RAID-5磁盘划分方案比较合适。如果是OLAP(Online Analytical Processing-联机分析处理)系统,则采用RAID-1+0磁盘划分方案。因为OLAP系统对数据的容灾能力要求比较高,一般都是大数据量的连续读写操作,并且数据量也比较大。所以采用RAID-1+0磁盘划分方案比较合适。

0
相关文章