关于RAID_1+0和RAID_0+1的比较
RAID的概念就不多说了,说说 RAID 0 和 RAID 1 。
RAID 0 是条带存储,叠加所有硬盘容量,因此不具有容错性,原理如下图所示:

RAID 1 使用非常原始的方式(复制一份、镜像)进行容错,原理如下图所示:
从原理图上面可以看到,RAID 0省空间,但是安全性差,RAID 1安全型好,但是废空间。
于是乎RAID 1+0 和 RAID 0+1 技术就应运而生了,如图所示:
RAID 0+1 和 RAID 1+0 又有什么区别呢?
RAID 0+1是先让磁盘组内的成员组成RAID 0条带化,然后磁盘组之间为RAID 1镜像关系。
RAID 1+0是先让磁盘组内的成员组成RAID 1互为镜像,然后磁盘组之间RAID 0条带化。 
         
除了构成先后的差别外,主要的区别还表现在容错性上。
RAID 0+1 的损坏一块磁盘之后,所在的RAID 0组即认为损坏,RAID 0+1 实际上已经退化为一个RAID 0 的结构,此时,上面那组RAID 0随便坏一块,整个RAID就崩溃了。
相对来说,RAID 1+0 就不会有这个问题,只要同一个RAID 1组内硬盘不全部损坏,整个RAID就不会有问题,在图中可以认为,只要右上角的那块磁盘不坏,整个RAID就不会崩溃。
所以使用RAID 1+0比RAID 0+1具有更好的容错性
什么是 RAID 1+0?
RAID 1+0 阵列使用四个硬盘,通过使用两个 RAID 1 阵列组成一个 RAID 0 阵列来创建 RAID 0 和 RAID 1 的组合。
由于 RAID 0 阵列上的所有数据都是通过RAID 1复制的,所以 RAID 10 阵列的存储容量即是 RAID 0 阵列的容量。例如,RAID 10 阵列中四个 400 GB 的硬盘对操作系统而言就好象是一个 800 GB 的硬盘。
RAID 10 的主要好处是结合了 RAID 0 性能和 RAID 1 容错的优点。在一个硬盘出现故障的情况下,它可以提供良好的数据保护能力。当一个硬盘发生故障时,从镜像磁盘的另一半可立即获得所有数据,从而无损数据完整性。在一个磁盘发生故障的情况下,计算机系统可完全正常运行,从而确保生产率最大。通过更换出现故障的硬盘,就可以恢复数据容错功能。
RAID 10 阵列的性能优于单个驱动器,因为数据可同时从多个磁盘读取。与双磁盘 RAID 0 相比,RAID 10 的读取功能更强,因为数据可从镜像磁盘的任意一半读取,但由于要确保将数据完全写入阵列,写入功能略有降低。
关于RAID_1+0和RAID_0+1的比较的更多相关文章
- ZAM 3D 制作简单的3D字幕 流程(二)
		原地址:http://www.cnblogs.com/yk250/p/5663907.html 文中表述仅为本人理解,若有偏差和错误请指正! 接着 ZAM 3D 制作简单的3D字幕 流程(一) .本篇 ... 
- ZAM 3D 制作3D动画字幕 用于Xaml导出
		原地址-> http://www.cnblogs.com/yk250/p/5662788.html 介绍:对经常使用Blend做动画的人来说,ZAM 3D 也很好上手,专业制作3D素材的XAML ... 
- 微信小程序省市区选择器对接数据库
		前言,小程序本身是带有地区选着器的(网站:https://mp.weixin.qq.com/debug/wxadoc/dev/component/picker.html),由于自己开发的程序的数据是很 ... 
- osg编译日志
		1>------ 已启动全部重新生成: 项目: ZERO_CHECK, 配置: Debug x64 ------1> Checking Build System1> CMake do ... 
- 【AR实验室】OpenGL ES绘制相机(OpenGL ES 1.0版本)
		0x00 - 前言 之前做一些移动端的AR应用以及目前看到的一些AR应用,基本上都是这样一个套路:手机背景显示现实场景,然后在该背景上进行图形学绘制.至于图形学绘制时,相机外参的解算使用的是V-SLA ... 
- Elasticsearch 5.0 中term 查询和match 查询的认识
		Elasticsearch 5.0 关于term query和match query的认识 一.基本情况 前言:term query和match query牵扯的东西比较多,例如分词器.mapping ... 
- Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)
		本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ... 
- vue2.0实践的一些细节
		最近用vue2.0做了个活动.做完了回头发现,好像并没有太多的技术难点,而自己好像又做了比较久...只能说效率有待提升啊...简单总结了一些比较细节的点. 1.对于一些已知肯定会有数据的模块,先用一个 ... 
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
		Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ... 
随机推荐
- 第一次使用Mac
			Mac禁用掉默认输入法 搜狗输入法已经包含中文.英文输入法了,其余输入法可以删除掉.按ctrol键的时候本来应该是搜狗输入法中英文切换,结果却是搜狗输入法和ABC输入法之间互相切换. 打开键盘偏好设置 ... 
- Python实现鸢尾花数据集分类问题——基于skearn的SVM
			Python实现鸢尾花数据集分类问题——基于skearn的SVM 代码如下: # !/usr/bin/env python # encoding: utf-8 __author__ = 'Xiaoli ... 
- 【Spring】Spring+struts2+Hibernate框架的搭建
			1.搭建过程 首先需要引入Spring.Struts2.Hibernate的开发包,已经数据库的驱动包. UserAction.java文件 package cn.shop.action; impor ... 
- spring 定时任务执行两次解决办法
			在web.xml中同时配置了ContextLoaderListener和DispatcherServlet?假如真是这样的话,需要删掉一个配置,因为你相当于配置了两个spring容器,两个容器分别都执 ... 
- easyui textbox combobox 设置只读不可编辑状态
			输入框 textbox $("#xx").textbox('setValue','value'); //设置输入框的值 $('#xx').textbox('textbox').a ... 
- Create PDB with Sample schemas in 12C
			查看: SQL> select * from ( 2 select username, account_status from dba_users order by created desc) ... 
- Oracle 12C -- sequence的新特性
			如果使用了全局临时表和sequence,有时会遇到一些问题.因为全局临时表与会话(或会话中的事务)相关,而sequence与数据库级别相关. 在12C中,可以创建一个sequence,其使用范围只是针 ... 
- MySQL-通用查询日志
			记录了所有对mysql数据库服务器请求的信息,无论这些请求是否得到了正确的执行. mysqld向通用查询日志中写信息是按照收到客户端的命令的顺序进行记录,而不是按照执行的顺序. server重 ... 
- mysqldump脚本crontab执行失败,但是手动执行成功
			检查备份时发现,cron中定时备份mysql的脚本备份失败,但是手动自行mysql备份脚本却能正常成功 检查cron的环境变量: # cat /etc/crontab ... SHELL=/bin/s ... 
- linux的0号进程和1号进程
			linux的 0号进程 和 1 号进程 Linux下有3个特殊的进程,idle进程(PID = 0), init进程(PID = 1)和kthreadd(PID = 2) * idle进程由系统自动创 ... 
