raid实现解析.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
raid实现解析.doc

RAID子系统提供了数据冗余功能,帮助预防信息丢失。本文讨论了不同的硬件RAID和软件RAID实现的差异和性价比的权衡。 现在的服务器中存在多种RAID实现方式。本文比较了不同的软件和硬件方法,并分析了对系统性价比的影响—帮助管理员了解哪种RAID实现方式最能满足它们的系统需要。 认识硬件和软件RAID 从内部来说,根据执行RAID引擎所使用的处理器的不同—即使用不同的算法来再分发数据的逻辑,基于服务器的RAID子系统可以分为两种比较宽泛的类型。RAID引擎在宿主机系统的处理器上执行的实现方式被认为是非智能RAID,通常称作软件RAID。这一RAID实现方式仅需要简单的磁盘接口控制器,例如SCSI或ATA,并且依赖于宿主机系统来提供内存和处理资源。 另一种方法,即智能RAID实现方法,通常被认做是硬件RAID,它提供专用的处理器和内存,在宿主机操作系统(OS)环境的外部执行RAID引擎。在硬件RAID子系统中,RAID的容量在OS看来就像物理驱动器。 图1. RAID 分类 图1 对不同类型的内部RAID进行了分类。硬件RAID可以进一步划分为基于I/O处理器和基于I/O控制器两种类型,软件RAID可以进一步划分为基于驱动程序的和基于OS的: 基于I/O 处理器 (IOP)的RAID:? 这是最为常用的方法,也往往是最为昂贵的,其功能最多,是性能最好的实现方式。基于IOP的RAID使用专用的处理器、内存子系统和外设在磁盘上完成RAID功能。板内的IOP执行RAID引擎,处理磁盘阵列的重建、RAID级别的移植以及错误恢复等其它工作。基于IOP的RAID要么嵌入在服务器中,作为母板内RAID(ROMB),要么放置在宿主机的总线适配器上(HBA)。 基于I/O 控制器 (IOC)的 RAID:? 这种类型使用I/O(磁盘接口)控制器的处理器和内存资源来执行RAID引擎。尽管它看起来类似于基于IOP的RAID,但基于IOC的RAID的特性和功能有限,因为它共享磁盘I/O控制器有限的处理器和内存资源。因为它占用的体积较小,而且成本较低,因此基于IOC的RAID往往嵌入在服务器平台中。 基于驱动程序的RAID:? 这种软件实现方式与特定的磁盘控制器的驱动程序集成在一起。这个驱动程序中包含有在OS环境中运行RAID引擎的代码,BIOS在OS前(启动)环境中运行RAID引擎。在OS中,这种方法看起来类似于IOP和IOC的RAID,因为它包含RAID空间的真正的物理驱动器对于OS来说不可见。但是,基于驱动程序的RAID完全依赖系统处理器和内存资源来执行RAID操作,在CPU利用率高的环境中将会影响到系统的性能。 基于OS的RAID:? 这种类型 的软件RAID,通常被实施为一个过滤驱动程序,与OS打包在一起,使用宿主机系统的处理器和内存资源来执行RAID引擎。基于OS的RAID与磁盘控制器的类型无关,使用磁盘控制器的驱动程序进行磁盘I/O。 图2 对每种RAID方法的优劣进行了逐项比较。 图2. RAID方法一览 高性能,高成本:基于IOP的RAID 这种组件包括一个硬件RAID系统,其中包括RAID卡的设备驱动程序,系统总线,用来执行RAID引擎的专用的I/O处理器和内存,I/O控制器和系统能够磁盘(参见图3)。 图3.基于I/O处理器的RAID系统 CPU密集型应用将会因为RAID引擎运行在专用的RAID处理器上,减轻了系统处理器的负担,从而提高了性能。基于IOP的RAID系统和基于IOC的RAID系统在SCSI和光纤通道系统中都很常见,但它们在一些高端ATA配置中也可以用。硬件RAID往往可以提供最为广泛的RAID等级—尤其是RAID-3和RAID-5,它使用硬件特有的OR(XOR)运算来加快奇偶的计算速度。磁盘配置信息(元数据)往往存储在磁盘驱动器和非易失内存中。硬件RAID通常使用大型的电池支持的缓存内存,提高了性能和可靠性。 专用的I/O处理器处理所有的RAID功能并完成重建、错误恢复以及特定系统自己所具有的其它功能。因为I/O处理器可以独立于OS完成操作,它可以在OS之外运行很多RAID任务;主机CPU的性能不会受到影响。 占用空间小,费用低:基于IOC的RAID 基于IOC的RAID系统共享磁盘控制器中的处理器和内存来执行RAID引擎,但这些系统的特性要比基于IOP的硬件RAID少。I/O控制器中的RAID固件处理错误恢复和重建算法,驱动程序可以是一个简单的磁盘控制驱动程序(参见图4) 图4.基于 I/O控制器的RAID系统 在有些实现中在磁盘上放置元数据;其它实现中仅将元数据放置在非易失内存中。基于IOC的RAID在理论上都与RAID的等级类型没有限制,但最常用的等级是RAID-0和RAID-1,因为在IOC中为RA

文档评论(0)

ziyouzizai + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档