(115) 集腋成裘,拼小为大
今天我们的屋子扩建了。
早上一起床,做硬件扫描的时候发现PCI-E总线上比往常多了一个设备,是一块RAID卡!主人从哪里弄来了这东西阿。难道要把我们这台电脑升级为服务器?我们Ubuntu的服务器版和桌面版确实基本没有啥区别,只是默认安装的软件和使用的内核不大一样。服务器版自然用的是服务器的内核,注重稳定,并且预装的是服务器相关的软件,没有图形环境。服务器版变为桌面版只要安装上桌面版的那些东西就可以,反过来也是一样。不过主人这台家用的电脑,整成服务器有什么用呢?要是不整成服务器,又为什么要装RAID卡呢?
说了这么半天,您可能还不知道这个RAID是个什么玩意。RAID,就是Redundant Array of Inexpensive Disks的缩写,中文翻译过来叫做“廉价冗余磁盘阵列”。有人可能问了:“这个RAID卡我买过,怎么也得几千块钱,加上上面接的硬盘,整个价钱能顶上一整台普通的家用电脑了,这个廉价二字从何谈起阿?”这个事情,还得从头说。RAID这个技术诞生在1987年,那时候的硬盘不像现在这么大,而且那时候的硬盘是容量越大单价越贵。比如现在,500G 的硬盘要是卖400块钱,那1T的硬盘绝对不到800块钱,道理很简单——否则谁买1T的阿,插上俩500G的好不好。而当年那个时候不是这样,那时候比如50M的硬盘卖500块钱,那100M的硬盘能卖1500。那有人说了,谁还买100M的阿,买俩50M的插上不好么?(好像就是刚刚我说的-_-b)可是有的情况不允许这么做的,比如说我有个数据库,数据量很大,可能会达到70M。那我就必须装一个大于70M的硬盘才能装的下,你装俩50M的硬盘,我这数据库文件总不能切碎了放吧。这个时候,RAID作为一项省钱的技术出现了。(虽然他现在已经俨然成为一种费钱的技术)
最初的RAID的功能很简单,就是把几块硬盘连接到一块RAID卡上,然后RAID卡把他们拼接在一起(逻辑上拼接,可不是拿刀切碎了当七巧板玩阿。),作为一整块大硬盘来用,这样就节约了购买大容量磁盘的成本,所以才号称“廉价”。RAID卡工作的时候也不许要什么运算,只是向上报告自己是一个硬盘控制器,上面接了一块100M的硬盘,然后上层的软件信以为真。当有数据写的时候,RAID卡就要实现自己的谎言(这话听着都矛盾……),真的向上层提供100M的完整的存储空间——他也确实可能提供,因为有俩50M的硬盘呢吗。他会先写其中一块硬盘,写满之后再写另外一块。当然具体怎么写的细节,这些上层软件是不知道的,他们只以为这就是一个100M的硬盘。