数据备份RAID1 和RAID5详解和对比

RAID 全称 Redundant Array of Independent Disks,中文意思“独立的冗余磁盘列队”。

RAID 一共有 0-6,共7种方式。

其实RAID 0,RAID 1, RAID 5 比较流行。

RAID0,就是纯粹的扩大容量,把2块(或以上)的数据盘串起来。作用是加大容量和存取速度,并不备份数据。但是他可以和其他RAID联用。比如组RAID10(先组RAID1,再组RAID0),RAID50。

RAID1,是用一块完全一样的盘来做数据盘的备份(镜像)。这样任何一块盘坏了,都不影响数据安全(当然2块全坏了就没办法了)。

RAID5,至少需要3块盘,2块数据盘,第三块盘作为奇偶校验盘。工作原理就是如果两块盘同一位上的数据相同(都是0,或者都是1),那么校验盘这一位就是0,否则就是1. 任何一块盘坏了(包括校验盘),都可以通过其他2块盘来恢复。(但是坏2块就没办法了)

RAID1 RAID5基本数据对比:

好了,大家看了上面是不是觉得RAID5更好,提供了安全性的同时,备份盘只耗费了33%的容量。

但是从安全性角度来说RAID5是不如RAID1.

比如2块盘组RAID1中,分4种情况 1,2号盘都好,1号盘坏,2号盘坏,1,2号盘都坏。只有第四种情况,数据才会损毁,所以RAID1安全性高达75%。

再来看3块盘组的RAID5,分8种情况,1,2,3号盘都好,1号盘坏,2号盘坏,3号盘坏,1,2号盘坏,2,3号盘坏,1,3号盘坏。1,2,3号盘坏。后四种情况都会造成数据损毁。所以RAID5安全性只有50%。

所以综合看来,RAID1 用50%容量为代价提升了75%的安全性。而RAID5以33%的容量为代价提升了50%的安全性。

安全性和容量,孰重孰轻,这个大家心里应该都有数。

更多:

RAID5 相比RAID1,不仅安全性上有不足,还有其他缺点。

1. 损耗系统性能:RAID5由于要计算奇偶校验位,所以在存储时,会额外消耗计算机性能。

2. 操作复杂且耗时:组RAID1本身很简单。 如果RAID1数据盘坏了,那么可以快速地再做一个备份盘 。而RAID5本身做组RAID的时候就需要额外的技术支持。而硬盘损毁时恢复数据更麻烦和耗时(需要更强大的技术支持)。

3. 影响运行:如果RAID1数据盘坏了,程序可以继续运行。然后晚上关闭系统后,在从容地用一块新硬盘重新组RAID。而RAID5的数据盘坏了,系统就崩溃了。

总结:

我们更应该使用RAID1来保证数据安全,相比RAID5他带来安全性更高,操作简便,更少影响系统运行。实际上外国许多公司都是组的RAID10,而RAID5早就遭到了微软和谷歌很多大牛的吐槽。

数据备份RAID1 和RAID5详解和对比的更多相关文章

  1. Java构造和解析Json数据的两种方法详解二

    在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Jso ...

  2. Java构造和解析Json数据的两种方法详解二——org.json

    转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/24/3096437.html 在www.json.org上公布了很多JAVA下的jso ...

  3. Java构造和解析Json数据的两种方法详解一——json-lib

    转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/23/3096001.html 在www.json.org上公布了很多JAVA下的jso ...

  4. (转)JPEG图片数据结构分析- 附Png数据格式详解.doc

       一.简述 JPEG是一个压缩标准,又可分为标准JPEG.渐进式JPEG及JPEG2000三种: ①标准JPEG:以24位颜色存储单个光栅图像,是与平台无关的格式,支持最高级别的压缩,不过,这种压 ...

  5. 大数据入门第八天——MapReduce详解(三)MR的shuffer、combiner与Yarn集群分析

    /mr的combiner /mr的排序 /mr的shuffle /mr与yarn /mr运行模式 /mr实现join /mr全局图 /mr的压缩 今日提纲 一.流量汇总排序的实现 1.需求 对日志数据 ...

  6. Appium+python自动化(三十)- 实现代码与数据分离 - 数据配置-yaml(超详解)

    简介 本篇文章主要介绍了python中yaml配置文件模块的使用让其完成数据和代码的分离,宏哥觉得挺不错的,于是就义无反顾地分享给大家,也给大家做个参考.一起跟随宏哥过来看看吧. 思考问题 前面我们配 ...

  7. libsvm的安装,数据格式,常见错误,grid.py参数选择,c-SVC过程,libsvm参数解释,svm训练数据,libsvm的使用详解,SVM核函数的选择

    直接conda install libsvm安装的不完整,缺几个.py文件. 第一种安装方法: 下载:http://www.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm. ...

  8. 前后端数据交互(四)——fetch 请求详解

    fetch 是 XMLHttpRequest 的升级版,使用js脚本发出网络请求,但是与 XMLHttpRequest 不同的是,fetch 方式使用 Promise,相比 XMLHttpReques ...

  9. C#开发BIMFACE系列46 服务端API之离线数据包下载及结构详解

    BIMFACE二次开发系列目录     [已更新最新开发文章,点击查看详细] 在前一篇博客<C#开发BIMFACE系列45 服务端API之创建离线数据包>中通过调用接口成功的创建一个离线数 ...

随机推荐

  1. 部分文件的MIMEType

    类型 文件拓展名 MIMEType 图片 png image/png bmp\dib image/bmp jpe\jpeg\jpg image/jpeg gif image/gif 多媒体 mp3 a ...

  2. JMeter压力测试简单使用

    原创:转载需注明原创地址 https://www.cnblogs.com/fanerwei222/p/11915535.html JMeter压力测试简单使用: 我们可以使用JMeter来测试一下自己 ...

  3. 通过String获取字符数组

    方法一: public void getChars(int start,int end,char c[],int offset) 作用是将当前字符串从start到end-1位置上的字符复制到字符数组c ...

  4. Tomcat服务部署及优化

    Tomcat 服务部署及优化 1.Tomcat简介 2.Tomcat 服务安装及部署 3.Tomcat虚拟主机配置 4.Tomcat 优化 1.Tomcat简介: 概述: Tomcat是Java语言开 ...

  5. Jenkins敏捷开发 自动化构建工具

    一.序言 Jenkins 是一款自动化构建工具,能够基于 Maven 构建后端 Java 项目,也能够基于 nodejs 构建前端 vue 项目,并且有可视化 web 界面. 所谓自动化构建是按照一定 ...

  6. Ubuntu service 命令

    启动指定服务 sudo service 服务名 start 停止指定服务 sudo service 服务名 stop 重启指定服务 sudo service 服务名 start 查看所有服务 sudo ...

  7. 使用SetTrustedCredmanAccessPrivilege获取已保存的凭据

      windows系统中有一个名为SeTrustedCredmanAccessPrivilege的权限,使拥有该特权的进程可作为受信任的调用者访问凭据管理器.   凭据管理器可以从控制面板 -> ...

  8. shell脚本部署redis以及redis主从复制和redis-cluster集群

    # 关于脚本: # 使用root用户执行此脚本,提前关闭selinux: # 执行脚本之前,hostsIP内的IP修改成自己的机器IP: # hostsIp内的IP数量如果有增加或者减少,for循环的 ...

  9. Python基础—set、copy(Day7)

    一.数据类型补充 1.str:.isspace()字符串是空格或至少是一个空格. s='alex' s1=' ' ret=s1.isspace() print(ret)执行结果:True  2.tul ...

  10. Java NIO Selector 的使用

    之前的文章已经把 Java 中 NIO 的 Buffer.Channel 讲解完了,不太了解的可以先回过头去看看.这篇文章我们就来聊聊 Selector -- 选择器. 首先 Selector 是用来 ...