教你玩儿转磁盘阵列

 话说某年某月某日,本编辑正在午睡,隔壁家的小云MM找了过来,“函函哥,我准备配台电脑,昨天到市场上看了看,发现目前市场上几乎每块主板上都说明了集成RAID芯片,能帮助我们实现磁盘阵列的功能,这到底是什么意思呀,有用吗?”好家伙,一来就问这么复杂的问题,看你态度这么诚恳,就跟你讲讲磁盘阵列的知识吧!  首先我们来谈为什么要使用RAID吧,随着计算机技术的发展,CPU的频率也进入了GHz 时代,计算机的内存已由最初的EDO发展到现在的DDR,显卡的速度日新月异,可是作为计算机最重要的外部存储设备——硬盘,其仍然摆脱不了系统性能瓶颈的角色。为了解决这个问题,科学家们曾经提出了“磁盘缓存控制(Disk cache controller)”的概念,它将从磁盘读取的数据存放在缓存中以减少磁盘读写的次数,数据的读写都在缓存中进行,如要读取的数据不在缓存中,才开始执行磁盘读写动作。这就好比我们在图书馆找资料一样,先把经常需要的书籍拿回家阅读,这样我们就不用每次查找资料都去图书馆了,只有当我们查阅的资料在借到的书籍中没有时,再到图书馆去借新的,如此一来就大幅提高了工作的效率。“磁盘缓存控制方式”在以前的DOS环境下对大容量数据存取有很好的性能提升,但在如今的多工作环境和大型数据库的存取上就有点力不从心了。另外,这种读取方式没有任何安全保障。一旦硬盘的数据损坏,人们的工作成果就可能毁于一旦。就好像图书馆的书损坏,我们再也查不到资料一样。 那么,有没有既能提高硬盘存储性能又保障数据安全的技术呢?有!它就是你刚才提到的RAID技术。
  “怎么样,云MM,是不是很难理解?”
  “有那么一点点吧,不过听你这么打比方我多少明白了点,看来现在的电脑系统瓶颈就在于硬盘了。”
  呵呵,别怕,一点也不复杂,这样吧先放松一下,给你讲个有关RAID的小故事吧!
  RAID的英文全称为“Redundant Array of Independent Disks”。翻译成中文即为“独立磁盘冗余阵列”,或简称“磁盘阵列”。由美国加州大学在1987年开发成功。 有些朋友可能会注意到,一部分主板说明书上会把RAID 解释为“Redundant Array of Inexpensive Disks”,即“廉价磁盘冗余阵列”。那么,这两者间有区别吗?我们来看一看RAID的历史就明白了。1988年,加州大学David A. Patterson等人提出几种新的磁盘组织方式,目的是用多个用于个人电脑上的廉价磁盘替代当时数据中心系统普遍采用的价格昂贵的SLEDs磁盘(Single Large Expensive Disks)。根据这一目的,David A. Patterson 等人首次使用了“Redundant Array of Inexpensive Disks”这一名称。RAID被提出后,引起了人们的极大兴趣,并获得了成功。后来,随着存储技术的发展,磁盘在价格上已经大大降低了,而性能也有很大的提升,因此如果再用廉价(Inexpensive)来形容组成RAID的磁盘就不合适了。 于是在后来,人们开始逐渐把RAID解释为“独立磁盘冗余阵列”。
  “哦,原来RAID技术还有这么一段历史呀,那么使用RAID后,它是怎么样解决你刚才提到的问题的?”
  “呵呵,好处可就多了,三天三夜都说不完,我就拣几个跟我们密切相关的讲讲吧。”
  RAID主要有以下几个优点
  1. 提高了磁盘的存取速度 我们可以把RAID看做一种是由多块独立的硬盘(物理硬盘)按不同方式组合起来形成一个硬盘组(逻辑硬盘),组成磁盘阵列的不同方式称为RAID级别(RAID Levels)。在用户看起来,组成的磁盘组就像是一个单独的硬盘,用户对磁盘阵列的操作与单个硬盘一模一样,可以对它进行分区,格式化等等。因为把小容量的磁盘延伸为大容量的单一磁盘,用户不必规划数据在各磁盘的分布,这样就提高了磁盘的工作效率。这就好比我们现在用的“一卡通”,以前交电话费、水费、电费等要跑上好几个地方,而现在只要我们把“一卡通”拿到银行去,银行就会帮我们交清所有的费用了,我们用户面对的只是银行一个单位,而不用管银行与其他部门之间是怎么操作的。
  2. 除了可以提高工作效率外,RAID还提供了很好的容错功能。这对于服务器级的用户是非常实用的,比如说大型的网吧,如果朋友们注意观察,现在比较大型的网吧也用上了RAID热备份功能,所谓热备份是在建立磁盘阵列系统的时候,将其中一磁盘指定为后备磁盘,如果阵列中某一磁盘发生故障时,磁盘阵列即以后备磁盘取代故障磁盘,并自动将故障磁盘的 数据重建在后备磁盘上,因为反应速度非常快,再加上快取内存减少了磁盘的存取,所以数据重建很快即可完成。这样一来,网吧的玩家根本意识不到服务器发生了系统故障。这跟我们前面提到的图书馆是一个道理,如果图书馆的图书损坏,管理员就会马上拿一本好书代替,而作为读者丝毫不会受到影响。
  3. 使用RAID另一个好处就是可以延长磁盘的寿命,为什么这样说呢,我想用电脑的朋友们大都会碰到这种情况吧,某天打开电脑,忽然发现系统提示硬盘上有了坏扇区,里面的重要数据不断的丢失。更要命的是如果是扇区损坏没有被及时修复,硬盘上的坏扇区很可能会越来越多直到整个硬盘不能被读取。坏扇区转移就是为了解决这个问题而诞生的,当磁盘阵列系统发现磁盘有坏扇区时,马上调用另一空白且无故障的扇区取代该扇区,以延长磁盘使用寿命,就好比一台机器如果内部少了一个螺丝,虽然它表面上可以正常的工作,但时间一长将会给机器带来致命的伤害,如果在故障刚刚发生时我们给机器换上一个好的螺丝,那么机器就会跟新的一样了。
  “怎么样云MM,对磁盘阵列有了个感性的认识吧。” 我侧过身子问道。
  “恩,有种恍然大悟的感觉,看来磁盘阵列技术确实给我们带来了很大的方便,明天我就去配台有这个功能的电脑,不过到时候你可要教我怎么用呀,好像还分什么等级吧?”云MM问道。
  “哦,没问题,这样吧我要去上班了,等下次有机会再跟你讲吧”。