对于网管来讲,如何有效保证服务器上数据的安全呢?用多个硬盘建立RAID恐怕是最普遍的手段了。今天就由笔者通过一问一答的方式为各位IT168的读者介绍RAID相关的知识。

问题1:什么是RAID?它是由什么组成的?

RAID的中文名字为磁盘冗余阵列,顾名思义它是由磁盘组成阵列而成的。因此RAID需要至少两块硬盘组成。RAID的基本想法就是把多个便宜的小磁盘组合到一起,成为一个磁盘组, 使性能达到或超过一个容量巨大、价格昂贵的磁盘。

早期的RAID诞生初衷并不是为了数据的安全,而是为了提高硬盘的读写速度。RAID 0和RAID 1就是为了这个目的而定义的。

问题2:什么情况需要使用RAID?

根据不同的实际情况作为网络管理员的我们应该为服务器采取不同的RAID种类。目前最流行的是RAID 0,RAID 1,RAID 5。其中RAID1和RAID 5过多的用于保证数据的安全,最大程度的防止磁盘意外坏掉而丢失数据情况的发生。而RAID 0则是为了提高磁盘读取的速度,它不提供任何数据备份和保障功能。知道了不同RAID应用的情况我们根据实际情况进行选择即可。

当然那些需要在硬盘上保存大量数据的人采用 RAID 技术将会很方便。主要表现在以下几个方面——

(1)增强了速度 ,服务器可以在同一时间从多个硬盘上读取数据。

(2)扩容了存储能力,多个硬盘组成更大的空间提供给服务器使用。

(3)可高效恢复磁盘,RAID提供了相当高的数据冗余功能,我们可以保证数据的完整无缺。

问题3: RAID都有哪些种类呢?希望可以使用直观容易懂的语言来描述。

对于RAID种类恐怕很多文章都介绍过,这里我就不详细说明理论东西了。恰巧笔者看到了一个外国描述RAID各个级别的图片,感觉很多地方定义得非常准确,而且通过看图了解RAID效果会更加显著。(如图1)

图1 点击看大图

(1)先为大家讲解第一个小图,也就是标记着standalone的饮水机,该图主要是通过矿泉水桶为饮水机提供水源这个现实例子来比喻RAID各个种类的区别。两个饮水机的出水孔相当于读取数据的接口,而矿泉水桶里的水则是宝贵的数据。这些数据正是通过出水孔这个数据接口而被用户读取的,相应的一个矿泉水对应着一块硬盘。

正常情况下我们的计算机(例如家的里计算机而不是服务器)是只有一个硬盘的,这时我们要喝水(读取硬盘数据)都是由这一个矿泉水桶提供水源的。(如图2)

图2

(2)接下来看第二个小图,也就是标记着cluster的图。(如图3)所谓cluster就是集群的意思,集群就是用多台服务器合并为一台,所有服务器提供的服务和数据都是一样的。就像图中显示的有两台饮水机,说明有两台服务器,这两台服务器都可以提供用户数据(水源)。用户可以到左边的饮水机来取得数据,也可以到右边的饮水机来获得数据,这样无形中就提供了用户获得水(数据)的效率。但是这种cluster集群有一个缺点,那就是需要多台服务器的硬件支持,在一定程度上造成了浪费。一般来说中小企业是不可能让多台服务器提供同样数据和同样服务的。

图3

(3)第三个小图标记着Hot swap,(如图4)它是热交换的意思。概念上有点类似于热备份。即一台饮水机(服务器),和第一个图一样它有一个硬盘,出水量也和standalone一样。但是当饮水机上的矿泉水桶出现问题时,例如水没了或者桶破了,这时马上采取热交换技术,将旁边的矿泉水桶替代出问题的桶放到饮水机上,从而继续提供服务。但是这种方法也存在一个缺点,那就是需要一个桶做备份,而且仅仅在原来桶出问题的情况下该桶才派上用场。另外换桶过程是需要时间的,无形中影响了服务的提供。

图4

(4)第四个图就是RAID中的老大了,这里说它是老大因为它是最早的RAID。Level 0即RAID 0级,通常称为带区,是利用带区数据映射技巧的特定性能。也就是说,当数据写入磁盘组的时候,被分成带区,交错写入磁盘组的磁盘中。这带来了高I/O性能,低开销,但不提供任何冗余。磁盘组的存储量等于总的各磁盘容量之和。 (如图5)

图5

当饮水机上的两个桶中任何一个出问题时用户都不能通过出水孔获得宝贵的数据(水源),因此它不提供冗余功能。当然在获得水源的过程中用户是通过两个矿泉水桶同时获得的,自然在出水量等多方面比只使用一个桶有优势。提高了数据读写的速度是RAID 0的最大特色。

小提示:可能有的读者会问在RAID 0图中最上面的那个桶出了问题不是一样可以出水吗?其实这个图仅仅是方便大家记忆和理解RAID,不可能通过简单的图就能100%准确的反映出只有进行理论描述才能说清楚的RAID种类。因此大家在理解图片的过程中也不要太过于拘泥。

(5)第五个图也是RAID中比较常用的,Level 1即RAID 1级,它就是常常提到的镜像RAID,(如图6)相比其它各级别RAID来说,这个级别使用的时间较长。RAID 1通过把同样的数据写到磁盘组的每一个磁盘上,将"镜像"复制到每个磁盘上,来提供数据冗余。镜像由于它的简单实现和数据的高可信度而一直很受欢迎。 1级在读数据操作时,并行处理2个或更多的磁盘,因此数据传输速率高, 但是其它的操作时无法提供高速的I/O传输速率。1级提供了非常好的数据的高可信度,并且改善了读数据操作的性能,但是耗费很大。要求组成磁盘组的各磁盘规格相同,而组成后磁盘组的容量仅仅等于一块磁盘的容量。

图6

正如图中显示的一样,有两个矿泉水桶放在饮水机上,这样当其中一个出了问题,例如破坏或没水时并不会影响用户使用矿泉水,因为另一个桶将会完好的提供水源。当然由于出水口没有出现任何扩大,所以出水量和使用一个矿泉水桶是一样的。因此出水速度没有变化却多加了一个桶使得RAID 1虽然可以提供最大程度的冗余,但是无法提高读取速度。

小提示:有一个细节需要各位IT168的读者特别注意,在RAID 1的图片中是两个矿泉水桶共用一个供水口,自然出水量没有什么变化。而下面的RAID 5则不同。稍后会详细讲解。

(6)第六个图是服务器最常用的RAID级别,即RAID 5。(如图7)笔者所在公司购买的服务器不管是DELL的还是IBM或者曙光服务器都是使用这个最常用的RAID类型。该级别的RAID是通过把奇偶校验分布到磁盘组中的一些或所有磁盘上,5级常使用缓冲技术来降低性能的不对称性。如果组成磁盘组的各磁盘规格相同,磁盘组容量等于磁盘的总容量,减去一块磁盘的容量。

图7

上面提到了RAID 1只是使用了一个供水口,没有提高出水速度。然而在RAID 5中我们会发现图7中三个矿泉水桶分别安装在了三个进水口中,这样我们就可以同时由三个水桶为用户提供水源了,自然在出水速度上得到了大幅度提高。同样三个矿泉水桶有一个出现问题也没有关系,不会影响到饮用水源。

小提示:有两点是图中没有表现出来的,这里再说明下方便读者有一个清晰的认识。(1)图7中只显示了三个水桶,实际上在现实工作中只要我们有三个以上的硬盘(水桶)就都可以配置RAID5了。四个,五个甚至更多的硬盘来配置RAID 5也是没有问题的。(2)在我们配置RAID 5后如果出现两个以上硬盘出现问题时,数据是不能得到有效的保护的。也就是说RAID 5只能在其中一块硬盘出问题时保证数据完好。

(7)最后一个图实际上是前面介绍的RAID 0和RAID 1的组合,只要大家对RAID 0和RAID 1有了清晰的认识,这个图理解起来就简单得多了,它实际上就是先配置为RAID 0然后在配置RAID 1,相应的发挥了RAID 0和1的所有优点,避免了它们的所有缺点。鉴于篇幅关系这里就不详细介绍了,毕竟RAID 0+1在实际工作中使用的机会没有前面介绍的RAID 5多。(如图8)

图8

总结:

对于服务器不是很熟悉的读者来说,掌握RAID的概念是最最基本的。它是我们进入服务器知识领域的敲门砖,希望本篇文章中的饮水机图可以帮助大家理解各种RAID和数据冗余类别。最后再重申一下图片仅仅是为了方便大家理解和记忆,对于RAID这样理论的东西很多细节和特点是无法通过简单的图片所表现出来的,图片描述有不完整的地方还请各位多多包涵,毕竟本篇文章是写给那些RAID知识门外汉的读者的。

新手入门:学RAID从饮水机开始(图)相关推荐

  1. 新手入门学传奇开区技术常见问题跟解答

    首先,欢迎各位新GM加入传奇爱好者,虽然是新加入,但是GM们对传奇的了解也大相径庭,有的是资深GM,而多数则是纯新人,今天又有坛友提出了疑问,对自己的前进方向很迷茫,所以写一篇新人关于传奇发展学习的建 ...

  2. 想学python都要下载什么软件-学编程闲余时间建议下载的软件_Python新手入门教程...

    原标题:学编程闲余时间建议下载的软件_Python新手入门教程 Python新手入门教程_在手机上就能学习编程的软件 很多小伙伴会问:我在学编程,想利用坐地铁坐公交吃饭间隙学编程,在手机上能学编程的软 ...

  3. 编程入门python语言是多大孩子学的-不学点编程,将来怎么给孩子辅导作业―Python新手入门教程...

    为了填满AI时代的人才缺口,编程语言教育都从娃娃抓起了!如果你还不懂Python是什么将来怎么给孩子辅导作业呢? Python新手入门教程 近期,浙江省信息技术课程改革方案出台,Python言语现已断 ...

  4. 新手前端练手网站_编程到底难不难学?新手入门选择哪种语言好?

    以下内容适合的读者:想要学习编程的小白 一.编程到底难不难学? 对于这个问题我的回答是不知道,学会了编程的人会说好学,中途就放弃的人会说很难,任何知识想要掌握好都不是一件容易的事情.所以我决定用自己的 ...

  5. “饮水机”:形象比喻 深入浅出理解RAID

    "饮水机":形象比喻 深入浅出理解RAID 作者:valen出处:IT专家网2009-09-22 07:00 1. standalone的饮水机:日常我们所用的机器一般均采用这样的 ...

  6. 绘画入门新手要学的绘画基础有哪些

    本文由"学美术上美术集网校"原创,图片素材来自网络,仅供学习分享 绘画入门新手要学的绘画基础有哪些?这些知识作为新手的你一定要知道.刚接触绘画的朋友,是不是不知道自己该怎么正确的开 ...

  7. 计算机入门新人必学,电脑新手入门教程 让你快速上手

    随着互联网时代的快速发展,电脑发展也相当的成熟,新手学电脑可以快速入门,是每个新手梦寐以求的事情,但是不会所有人都可以快速上手,最近很多用户咨询我关于零基础学电脑先学什么,或者是电脑新手入门必学什么东 ...

  8. java基础代码怎么学_新手入门Java,如何能学好

    原标题:新手入门Java,如何能学好 零基础学生只要方法得当,完全可以掌握Java编程.下面总结出来的几点学习Java的方法,仅供大家参考. 01.理解Java思想 Java是一门面向对象编程语言.向 ...

  9. 学微服务必经之路——Nacos新手入门(上)

    学微服务必经之路--Nacos新手入门(上) 1.什么是配置中心 1.1 什么是配置 1.2 什么是配置中心 2. Nacos 2.1 主流配置中心对比 2.2 Nacos特性 3.Nacos快速入门 ...

最新文章

  1. 数据库中数据类型和约束(整数类型、字符串、时间类型)
  2. 访谈计算机操作管理协会(Afcom)首席执行官Jill Eckhaus:数据中心问题出现在何处?...
  3. python交换函数_python a,b = b,一个实现?它与C ++交换函数有何不同?
  4. Java学习之路-4_集合知识总结
  5. Java\学习——字符串
  6. jquery modile 笔记
  7. 【老军医方】在脱发过程中遇到的各种疑难杂症
  8. UVA 1324 The Largest Clique 最大团(强连通分量,变形)
  9. 26. 面向对象程序设计
  10. python的smtplib
  11. android 点击屏幕事件_Android 事件分发机制
  12. 用ie浏览器签章后保存在桌面显示不出文件
  13. #4017. 复制粘贴(copypaste)
  14. 从视觉AI应用案例,看AI落地的瓶颈在哪里?
  15. Unity3D “xx AnimationEvent has no function name specified!”解决方案
  16. 『幸运 9 点』IVR游戏商业计划书(转)
  17. 南非SABS认证范围
  18. 2021-06-01太极图实现(定位+动画)
  19. jenkins环境配置
  20. 散列表、散列函数和散列冲突以及应用场景(一文看懂)

热门文章

  1. Contributor License Agreements : 贡献者许可证协议 介绍
  2. 举个栗子!Tableau技巧(52):学做一个实用的热图日历
  3. KB奇遇记(3):糟糕的IT现状
  4. MyBatisPlus03_MyBatisPlus的增删改查CRUD
  5. CH579 以太网 DHCP+DNS+MQTT
  6. 当我们谈论手机体验时,我们在谈论什么
  7. ShaderOne的体积雾
  8. Github桌面版托管本地静态web网页
  9. java delegate模式_java的delegate实现
  10. 打包软件——Setup factory 7.0使用介绍