传统的RAID 1.0:

选几个硬盘—>做成RAID 5—>根据容量创建LUN—>映射给主机

1.重建时间随单盘容量的增大而迅速增加

2.性能上,一个LUN的读写只能在一个磁盘组进行,后面加入新的SSD等介质也发挥不了作用

进击的RAID 1.5:

选几个硬盘—>做RAID 5—>选多个RAID 5组成一个池—>切分为相等的小块Extend—>选择Extend组成LUN

1.读写跨越了更多的硬盘,单个LUN可以包含多个RAID,也可以有多种磁盘可以做到自动分层存储。(Automated Tiered Storage management,ATS,是在不同磁盘类型和RAID级别之间迁移数据块的功能,这可满足性能和空间使用之间的适当平衡,并避免所谓的热点)

2.一个磁盘损坏引起的重建还是只在单一RAID中进行,并没有降低重建时间。

彪悍的RAID 2.0:

以下以华为的HVS为例,图文均来自于HVS RAID 2.0+,不同厂家实现RAID 2.0的具体方法和技术参数各有差异,

1、对于系统内部物理硬盘,按介质的性能不同,组成几类存储池

2、将系统内部每个硬盘空间切分成64MB大写逻辑块(Chunk)

3、将来自不同硬盘上的按RAID组成逻辑块组(CKG)

4、 将逻辑块组(CKG)切分成512KB~64MB(默认4MB,大小可配置)的逻辑块(Extent)

5、按需将1-N个更细粒度逻辑块(Extent)组成卷(Volume)/文件(File)

以前基于硬盘来做RAID,现在基于Chuck来做RAID,好处是,

1.重建时间大大减少了,一个Chuck损坏,大小才64MB,几秒即可完成;一个硬盘损坏,重构的也仅是多个有实际数据的Chuck,参与的目标硬盘也较以往更多。

2.每个层次的切分越小,迁移和重构的数据量就会越少,重构时间可以进一步减少;但每个层次的切分越小,管理的开销就增大,可管理的磁盘数目就越少。

当硬盘1损坏,造成CKG0和CKG1的数据损坏,实际有数据的14和16两个Chunk损坏,将随机选择Pool中的空闲Chunk进行重构(黄色方块代表无数据),随机选择的Chunk将保证尽量分布在不同的硬盘上。

随机选择硬盘6的61号Chunk和硬盘8的81号Chunk,数据将从其他成员盘重构到这两个Chunk。

减少重构时间的意义在哪里?

存储系统追求性能和可靠性的平衡,单份校验机制下的存储系统(RAID 6为2份校验,Raid 1+0较特殊),在重构过程中数据没有可靠性保证,如果在重构过程中出现坏盘,数据丢失,不可恢复;所以对于存储系统而言,其可靠性最重要标志为RAID重构时间越小越好。RAID重构时间=数据量/硬盘读写速度,一块2TB,7.2K盘为例,重构写于速度为30M左右,重构时间9小时,业务高峰期时间更长。为了减少重构时间,读写速度不变的情况下,减少写入数据量是重要方法。

至于IBM XIV,他不做RAID,把所有硬盘全部切为1MB大小,利用伪随机算法在不同的节点间保留2个拷贝(有点像RAID 10),因此硬盘故障恢复时间和性能和RAID 2.0是一样的,只是容量利用率最多只有50%

RAID 2.0的更多相关文章

  1. RAID 2.0 技术(块虚拟化技术)

    RAID 2.0 技术(块虚拟化技术) RAID 2.0 技术(块虚拟化技术),该技术将物理的存储空间划分为若干小粒度数据块,这些小粒度的数据块均匀的分布在存储池中所有的硬盘上,然后这些小粒度的数据块 ...

  2. RAID磁盘阵列0、1、5、10

    raid0:(又称为Stripe或Striping--分条) (一句话:raid0 用多个磁盘串联起来成一个大磁盘,容量为几个的总和.优点:容量大,速度快.缺点:数据不安全) 即Data Stripp ...

  3. Raid(0/1/5/10)

    一.Raid需要的硬盘数量 1.raid 0:     最少1块硬盘(但是1块盘没有意义,至少2块才有实际意义) 2.raid 1:     最少2块硬盘 3.raid 5:     最少3块硬盘 4 ...

  4. 图解RAID 0, RAID 1, RAID 5, RAID 10

    RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失 ...

  5. RAID 0、1、5、1+0总结

    RAID(Redundant Array Of Independent Disk,独立磁盘冗余阵列),可以提供比普通磁盘更快的速度.更高的安全性,生产环境中服务器在安装时一般都会做RAID,RAID的 ...

  6. Liu Junqiao:Raid 0 1 5 6 特性

    Raid工作原理及优缺点 Raid工作原理及优缺点Raid 0Raid 1Raid 5Raid 6Raid 1 0Raid 5 0Raid 6 0 Raid 0 特点 采用剥离,数据将在几个磁盘上进行 ...

  7. 什么是RAID?RAID有什么用?RAID原理

    什么是RAID 硬盘是个很脆弱的东西,它经常会坏掉.所以,为了保证服务器可靠耐用,硬盘必须时时刻刻保持可用.所以有了RAID这个东西.它的目的是将好几个硬盘合并在一起,就算硬盘坏了一个,剩下还有好几个 ...

  8. Raid与DAN、SAN、NAS基础

    一. 磁盘基本知识 1. Raid分类 Raid磁盘阵列是由多个磁盘组合成的磁盘组,可将数据分割成许多区段,分别存放在各个磁盘上:同时利用不同排列技术,可提高磁盘性能和数据安全性.下列简单介绍几种Ra ...

  9. 关于raid的理解

    缘起 公司部署业务的时候,6块盘需要做raid,以前还没有用过所以不知道,临时才去百度看了一下相关知识. 部署 当前可以用软raid与硬raid,软raid系统上建立,占用CPU与IO资源;硬RAID ...

随机推荐

  1. 【网络流24题】 No.22~24

    接下来几题就写写题解吧.不是很想打了. 22. 输入文件示例input.txt4 21 2 7 36 5 8 37 8 10 59 6 13 9 输出文件示例output.txt17 最长不相交路径. ...

  2. 【POJ2406】 Power Strings (KMP)

    Power Strings Description Given two strings a and b we define a*b to be their concatenation. For exa ...

  3. CAS单点登录配置[5]:测试与总结

    终于要结束了... 测试 1 我们同时打开Tomcat6和Tomcat7,如果报错请修改. 打 开浏览器,输入http://fighting.com/Client1,进入CAS登录界面,这里我们先输入 ...

  4. jap中文转码

    因为js url在传值的过程中使用的是js自己默认的字符集编码规则,我们必须把它转成属于我们自己的编码规格,JSP页面 url=encodeURI(encodeURI(url)); //用了2次enc ...

  5. 最全的JAVA源码整合下载

    http://www.360doc.com/content/14/0602/00/11407612_382890953.shtml http://www.360doc.com/content/14/0 ...

  6. java学习多线程之死锁

    形成死锁的前提是同步代码块嵌套. 什么是死锁?当一个线程拿到锁以后在这个锁内部的代码需要访问另一段的代码的时候另外一个程序的锁被另外一个线程拿到,这样的话,就造成了两个锁互不想让程序没法往下执行的这种 ...

  7. 集合ArrayList双色球练一练(自己的方法,太麻烦)

    namespace 集合__双色球练一练{    class Program    {        static void Main(string[] args)        {        / ...

  8. cocos2d-x 使用UIWebView加载网页(顺便可以看到如何用OC调C++)

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢! 原文地址: http://www.cocos2dev.com/?p=248 前段时间项目中要微博授权登 ...

  9. Android-RC4的加密解密代码

    static String RC4(String keys, String encrypt) { char[] keyBytes = new char[256]; char[] cypherBytes ...

  10. (转载)PHP 判断常量,变量和函数是否存在

    (转载)http://www.jb51.net/article/17881.htm 如果你看懂了上面一句话,那么接下来都是废话,PHP手册写的还是很全的.一句话就把我标题中的问题全部解决了. 还是举几 ...