首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | 镜像站
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
Linux资讯 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>系统管理>内核技术>正文

Raid 技术学习

http://www.oklinux.cn  2005-06-07  来源: oklinux收集整理  ming      会员收藏  游客收藏  【 】 
知识拓展:     http://www.scsi.cn/knowledge/knowledge_list.php?news_id=588 RAID技术详解

            http://www.it.com.cn/f/server/051/4/53660.htm 什么是独立磁盘冗余阵列?
          http://download.chinaitlab.com/soft/452.htm 高端服务器RAID配置录像
          http://www.net130.com/2004/8-31/85635.html RAID全解
      http://www-900.ibm.com/developer ... m/raid1/index.shtml 新 Linux 2.4 内核中的软件 RAID

什么是RAID?

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

磁盘阵列其实也分为软阵列 (Software Raid)和硬阵列 (Hardware Raid) 两种. 软阵列即通过软件程序并由计算机的 CPU提供运行能力所成. 由于软件程式不是一个完整系统故只能提供最基本的 RAID容错功能. 其他如热备用硬盘的设置, 远程管理等功能均一一欠奉. 硬阵列是由独立操作的硬件提供整个磁盘阵列的控制和计算功能. 不依靠系统的CPU资源.
由于硬阵列是一个完整的系统, 所有需要的功能均可以做进去. 所以硬阵列所提供的功能和性能均比软阵列好. 而且, 如果你想把系统也做到磁盘阵列中, 硬阵列是唯一的选择. 故我们可以看市场上 RAID 5 级的磁盘阵列均为硬阵列.(2001)
  软件RAID使你不必购买昂贵的硬件RAID控制器和附件就能极大增强linux磁盘的IO性能和可靠性。由于Linux RAID是用软件实现的,所以他灵活速度快,使用软件RAID,可以实现将几个物理磁盘合并成一个更大的虚拟设备,达到性能改进和数据冗余的目的。

软件RAID的级别
  目前用于Linux 2.4内核的软件RAID支持以下级别:线性模式,RAID0, RAID1, RAID4和RAID5.
线性模式:
    将两个或更多的磁盘组合到一个物理设备中,磁盘不必具有相同的大小。因为磁盘彼此间是附加在一起的,所以写入RAID设备时首先填满磁盘0,然后是磁盘1以此类推。
    该级别中没有冗余。如果一块磁盘出现鼓掌,那么很可能会丢失所有数据。不过因为文件系统只是丢失一个大的连续数据块,所以可以非常幸运地恢复一些数据。
    对于单独的读和写,读取和写入性能不会提高。但是如果几个用户同时使用这一设备,并且一个用户实际使用第一个磁盘,而另一个用户正访问第二块磁盘上的数据,那么将会提高性能。

RAID0
  也成为分带(stripe)模式,它与线性模式类似,只不过读取和写入是在设备上并行完成的,设备的大小应该大致相等,因为所有的访问都是并行完成的,所有的设备都是同等填充的,如果一个设备比其他设备大的多,那么RAID设备中仍将使用额外的空间,但在写入RAID设备的高端部分时只能访问那个大的磁盘,会降低性能。
  与线性模式一样,RAID0也没有冗余,与线性模式不同的是,如果驱动器出现故障,那么将无法恢复任何数据,如果从RAID0中取出一个驱动器,那么RAID设备将不仅丢失一个连续的数据块,而是整个设备上都将充满小的空洞。
  因为读取和写入都是在设备上并行完成的,读取和写入性能都将会增加,这通常是运行RAID0的主要原因,如果磁盘总线足够快,可以非常接近N*P MB/S

RAID1
  一个真正具有冗余的模式,RAID1可以用于两个或多个磁盘,拥有0块或多块备用磁盘,这种模式在其他一些磁盘上保留一块磁盘信息的准确镜像。当然磁盘大小必须相等,如果不等,你的设备将具有最小磁盘的大小。
  如果最多驱除了N-1块磁盘(或出现故障),那么所有的数据仍然保持不变,如果有备用的磁盘,而且系统在故障中并没有被破坏,那么在检测到驱动器故障后,会立即在一块备用磁盘上开始重建镜像。
  RAID的写入性能比在一个单独的设备上稍差一些,这是因为写入数据的相同副本必须发送到列中的每一个磁盘上,读取性能通常更为糟糕,但在2.4内核中已经得到大大的改进。

RAID4
RAID 4将数据条块化并分布于不同的磁盘上,但条块单位为块或记录。RAID 4使用一块磁盘作为奇偶校验盘,每次写操作都需要访问奇偶盘,这时奇偶校验盘会成为写操作的瓶颈,因此RAID 4在商业环境中也很少使用。阵列大小是(N-1)*S , S是阵列中最小驱动器的大小
如果一个驱动器出现故障,那么可以使用奇偶校验信息来重建所有数据,如果两个驱动器出现故障,那么所有数据都将丢失。

RAID5
在希望结合大量物理硬盘并且仍然保留一些冗余时,RAID5可能是最有用的RAID模式,RAID5可以用在三块或更多的磁盘上,并使用0块或更多的备用磁盘。就想RAID4一样,得到的RAID5设备的大小是(N-1)*S .
RAID5和RAID4最大的区别就是奇偶校验信息均匀分布在各个驱动器上,这样就避免了RAID4中出现的瓶颈问题,如果其中一块磁盘出现故障,那么由于奇偶校验信息,所以所有的数据仍然可以保持不便,如果可以使用磁盘,那么在设备故障之后,将立即开始重建数据。如果两块硬盘同时出现故障,那么所有数据就会丢失。RAID5可以经受一块磁盘故障,但不能经受两块或多块磁盘故障。
读取和写入性能通常会很高,但很难预测其提高程度。

上一篇:软件产品发布流程   下一篇:Linux平台的下载程序


收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·软件产品发布流程
·Linux平台的下载程序
·Linux内核编程(使用/proc进行输入)
·实战编译Linux内核
·Linux核心是服务器
·为你的 Linux 快速编译所需要的模块
·linux驱动程序设计
·内核与补丁
·跟我一步一步学汉化(一)
·Linux 的 x86 汇编程序设计
·Debian下编译安装Linux内核
·C语言嵌入式系统编程修炼之背景篇
·linux内核体系结构
·内核比较:2.4 和 2.6 上的 Web 服务
·红旗桌面5界面探讨之一
·Linux中重新编译内核
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·Linux系统下内核定时器的用法
·学习园地:Linux系统内核中判断大小的
·系统编译:如何给Make命令来传递参数
·Linux 2.6内核中sysfs文件系统简单概述
·Fedora 8 Linux系统的内核配置注意事项
·升级Linux内核的一般步骤方法
·Linux发行版知识普及:三个版本的CPUID
·编译安装Virtualbox驱动模块
· Linux系统的内核解读入门
·新手学堂 Linux系统的内核解读入门
·Linux系统内核中网络参数的意义及其应
·走向Linux系统高手之路 内核编译过程解
  阅读排行
· 深入理解LINUX内核中文版下载地址
·基于S3C44B0微处理器的uClinux内核引导
·Kernel command using Linux system ca
·Linux 2.6内核如何武装Fedora Core 2
·Process priority and control on AIX
·Linux操作系统的内核编译内幕详解
·推荐:Linux用户态与内核态的交互
·通过振动向Linux ThinkPad传输信息
·Linux操作系统源代码详细分析(二)
·Linux系统内核接收以太帧的处理程序
·Linux and symmetric multiprocessing
·主流嵌入式Linux系统下GUI解决方案
·揭秘Linux内核调试器之内幕
·用命令行加挂Linux的文件系统简介
·Linux内核和核心OS组件的测试与分析
网摘收藏: