热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

RAID小结

RAID这东西其实挺复杂的,分类比较多,下面小结一下:1RAID0无差错控制的带区组RAID0其实就是把数据对半分,把东西保
RAID这东西其实挺复杂的, 分类比较多,下面小结一下:



1 RAID 0 无差错控制的带区组

RAID 0其实就是把数据对半分,把东西保存到不同的盘上,比如,把100M的数据分成两个50M,每个盘各写50M,这样总耗时:5秒,是不是快了,当然实际肯定高于5秒,至少比写到一块盘快。同样读数据也是这样,从两块盘并行读,是不是也必一块盘要快呢?这就是raid0,任何大于2块数量的磁盘就可以作raid0,如果磁盘容量不一样,比如一块40G,一块80G,不会浪费任何空间(仅限raid0模式),这样两块盘作raid0,总容量最后就是40G+80G=120G。一般情况,raid0容量=各个盘容量之和。raid0是所有模式中速度最快的。也是安全性最低的,因为数据都分割了存放,任意一块盘损坏,数据全部丢失。无任何安全性可言。



优点:极高的读写效率

速度快,由于不存在校验,所以不占用CPU资源

部署简单

缺点: 无冗余,通常和其他RAID级别混合使用

不适合用于关键数据环境



最小硬盘数:2



2 RAID 1 镜象

数据同时一致写到主硬盘和镜像硬盘

为了实现数据冗余,防止一块盘损坏,数据就全丢失的情况发生,将一份数据同时写到两块盘上,任何一块盘损坏,另一块块盘在线接管。所以raid1也叫镜像raid。是所有模式中速度最慢的,因为数据要同时写两块盘。但是安全性是最高的。无任何速度可言。任意偶数块盘就可以作raid1。如果磁盘容量不一样,最终按照容量最小的盘算。raid1总容量=最小容量X磁盘数量÷2。



优点:提供了很高的数据安全性和可用性

100%的数据冗余

设计、使用简单

不作校验计算,CPU占用资源少



缺点:空间利用率只有1/2

相对于单个硬盘,无法提高写性能



3 RAID10 (RAID0+RAID 1):两块盘先作raid0,然后再找两块盘,将原来做好的raid0中数据复制一份到自己,与原来的raid0做成raid1;或者两块盘先作raid1,然后再找两块盘,分担数据流量,与原来的raid1做成raid0,这样就组成了raid10。这种模式是所有模式中性能和安全性都最好的一种,但是成本是最高的。



4 RAID 3

最少需要3块盘组成,原理是这样的:和raid0一样,数据分割,并行写入各个磁盘,除了其中一块磁盘,这块盘叫做奇偶校验盘(一般用P表示),单独存放奇偶校验信息,所谓奇偶校验,就是:因为数据被分割了存放,所以可以根据这些分割的数据来做一个恢复措施,利用我这边的数据和你那边的数据算出一些信息,如果任意一边数据丢失,通过另一边的现存数据和事先算好的信息,就可以再生成丢失的数据。这样,如果任何一块盘损坏,都可以根据另外的磁盘重新生成坏盘上的数据,不管损坏的是数据盘,还是校验信息盘。由于校验信息占用空间不大,所以只需一块盘就够了,信息都放在这块盘上,这样既实现了raid0的速度(比raid0稍慢),又实现了raid1的安全(raid1是纯数据的镜像,raid3是利用奇偶校验信息,占用空间小),成本又相对低廉,何乐而不为?但是如果同时(同一时刻)坏掉两块盘,数据就完了。raid3总容量=容量总和-P盘容量。

优点:数据分布式存储在连续的硬盘上,具有较高的读速率,适合大文件连续读操作的应用如果有一个硬盘损坏,数据的有效性没有影响

缺点:校验盘是整个硬盘阵列系统的瓶颈 有数据盘故障时,每次读操作时都需要进行校验计算,读性能大幅度下降



5 RAID2:带海明码校验

RAID 2 采用早期的海明码校验组成硬盘阵列,RAID中第1个、第2个、第4个……第2的n次幂个硬盘都是校验盘。RAID2的硬盘利用率很低,目前基本不再使用



6 RAID 4是带有共享校验硬盘的独立数据盘( Independent data disks with shared parity disk),与RAID 3类似,不同在于对数据访问是每次一个盘,而RAID 3是每次一个条带,RAID4的读写性能较差,目前较少使用



7 RAID 5

RAID 5与RAID 3机制类似,但校验数据均匀分布在各数据硬盘上,RAID成员硬盘上同时保存数据和校验信息,数据块和对应的校验信息保存在不同硬盘上。RAID 5是最常用的RAID方式之一

RAID5的读出效率很高,写入效率一般,块式的集体访问效率不错。因为奇偶校验码在不同的磁盘上,所以提高了可靠性,允许单个磁盘出错。RAID 5也是以数据的校验位来保证数据的安全,但它不是以单独硬盘来存放数据的校验位,而是将数据段的校验位交互存放于各个硬盘上。这样,任何一个硬盘损坏,都可以根据其它硬盘上的校验位来重建损坏的数据。硬盘的利用率为n-1。 但是它对数据传输的并行性解决不好,而且控制器的设计也相当困难。RAID 3 与RAID 5相比,重要的区别在于RAID 3每进行一次数据传输,需涉及到所有的阵列盘。而对于RAID 5来说,大部分数据传输只对一块磁盘操作,可进行并行操作。在RAID 5中有“写损失”,即每一次写操作,将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。 RAID-5的话,优点是提供了冗余性(支持一块盘掉线后仍然正常运行),磁盘空间利用率较高(N-1/N),读写速度较快(N-1倍)。RAID5最大的好处是在一块盘掉线的情况下,RAID照常工作,相对于RAID0必须每一块盘都正常才可以正常工作的状况容错性能好多了。因此RAID5是RAID级别中最常见的一个类型。RAID5校验位即P位是通过其它条带数据做异或(xor)求得的。计算公式为P=D0xorD1xorD2…xorDn,其中p代表校验块,Dn代表相应的数据块,xor是数学运算符号异或。



8 RAID 6

RAID 6 是带有两个独立分布式奇偶校验方案的独立数据硬盘(Independent data disks with two independent distributed parity schemes)。广义上讲,能够允许两个硬盘同时失效的RAID级别统称为RAID 6,狭义上讲,特指Intel的RAID P+Q技术。硬盘空间利用率为(N-2)/N,N为RAID6阵列硬盘总数


推荐阅读
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
  • RouterOS 5.16软路由安装图解教程
    本文介绍了如何安装RouterOS 5.16软路由系统,包括系统要求、安装步骤和登录方式。同时提供了详细的图解教程,方便读者进行操作。 ... [详细]
  • ejava,刘聪dejava
    本文目录一览:1、什么是Java?2、java ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • 服务器上的操作系统有哪些,如何选择适合的操作系统?
    本文介绍了服务器上常见的操作系统,包括系统盘镜像、数据盘镜像和整机镜像的数量。同时,还介绍了共享镜像的限制和使用方法。此外,还提供了关于华为云服务的帮助中心,其中包括产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题和视频帮助等技术文档。对于裸金属服务器的远程登录,本文介绍了使用密钥对登录的方法,并提供了部分操作系统配置示例。最后,还提到了SUSE云耀云服务器的特点和快速搭建方法。 ... [详细]
  • 海马s5近光灯能否直接更换为H7?
    本文主要介绍了海马s5车型的近光灯是否可以直接更换为H7灯泡,并提供了完整的教程下载地址。此外,还详细讲解了DSP功能函数中的数据拷贝、数据填充和浮点数转换为定点数的相关内容。 ... [详细]
  • SpringBoot整合SpringSecurity+JWT实现单点登录
    SpringBoot整合SpringSecurity+JWT实现单点登录,Go语言社区,Golang程序员人脉社 ... [详细]
  • 本文总结了初学者在使用dubbo设计架构过程中遇到的问题,并提供了相应的解决方法。问题包括传输字节流限制、分布式事务、序列化、多点部署、zk端口冲突、服务失败请求3次机制以及启动时检查。通过解决这些问题,初学者能够更好地理解和应用dubbo设计架构。 ... [详细]
  • {moduleinfo:{card_count:[{count_phone:1,count:1}],search_count:[{count_phone:4 ... [详细]
  • 俗话说,好记性不如烂笔头,这些东西也都是我Google来的,做个笔记以后自己安装也方便些。因为官方wiki的BeginnersGuide讲的非常好,大部分步骤按照wiki一步一步来就 ... [详细]
  • 移动传感器扫描覆盖摘要:关于传感器网络中的地址覆盖问题,已经做过很多尝试。他们通常归为两类,全覆盖和栅栏覆盖,统称为静态覆盖 ... [详细]
author-avatar
孤魂地狱
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有