BIOS知识枝桠——RAID 磁盘阵列

文章目录

  • 前言
  • 一、RAID介绍
  • 二、RAID等级分类
    • 1.RAID0
    • 2.RAID1
    • 3.RAID2
    • 4.RAID3和RAID4
    • 5.RAID5和RAID6
    • 6.RAID7
    • 7.RAID10
  • BIOS下组建RAID


前言

假设存在多块磁盘,如果不组建阵列,磁盘与磁盘之间是没有任何关系的。磁盘A和B,放在A中的文件与B磁盘没有关系,两块磁盘是完全独立的两个数据仓库,这种传统的没有联系的关系简称JBOD(Just a bunch of disk)结构。这种结构存在很大弊端,当调取磁盘A内数据时,磁盘A在全力工作,磁盘B是空闲的,磁盘B同理,除非同时调用磁盘AB的数据,不然总有一块磁盘是空闲的,无形间就浪费了一部分磁盘性能,为了发挥所有磁盘的性能,磁盘列阵产生了。


一、RAID介绍

RAID:容错式磁盘阵列(Redundant Arrays of Independent Disks,简称:磁盘阵列)是利用利用虚拟化储存技术把多个硬盘组合起来,成为一个或多个硬盘数组组,目的为提升效能或数据容错功能。
在给磁盘组建完RAID后,在电脑内就只会看到一个RAID的阵列盘,子磁盘是看不到的,只需要和使用普通磁盘一样去使用RAID即可。

二、RAID等级分类

RAID有不同等级,目前行业的公认的等级为0-7,不同等级之间并没有优劣之分,仅仅是不同功能的阵列,在使用时根据不同的需求和情况组建合适的RAID。

1.RAID0

RAID0的工作原理很像内存双通道,至少需要两块磁盘,工作原理是把一个完整的数据拆开以后分散到两块磁盘里去,写入的时候同时往两块磁盘写入,读取的时候同时从两块磁盘读取,做到和内存双通道一样带宽翻倍速度翻倍的效果。比较强大的地方是有多少磁盘就可以翻多少倍性能,由于没有和内存一样的IMC的限制,可以把南桥的带宽跑到上限,但是这里的翻倍速度只是连续读写速度,RAID0是无法提高随机读写性能的。
随机读写主要考验的就是硬盘的寻道和寻址能力,在组建完RAID以后,硬盘随机读写性能低下的问题是没有办法改变的,硬盘还是要花费大量的时间去寻道和寻址,所以组建RAID随机读写性能的提高对于单块磁盘来讲,提升是非常微弱的,也有可能会因为某块磁盘问题出现组RAID0 后随机读写能力弱于单块磁盘的现象。
RAID0是所有阵列里传输速度最快也是最不安全的,因为数据被拆分到了好几块磁盘里,假设组了6块磁盘的RAID0,数据就被拆成6份分散在6个磁盘里,万一有任意一块磁盘出现故障,只有剩下的5块磁盘的数据是无法正常读取的,会导致所有的数据全部报废。
因此RAID0 的优缺点都很极端,加的磁盘越多,速度越快,数据越危险。
RAID0
内存的IMC限制指的是内存控制器(Integrated Memory Controller)的限制。IMC是现代处理器中的一个组件,它负责管理处理器与内存之间的数据传输。其主要作用是控制内存的访问速度和数据传输,以确保处理器能够高效地读取和写入数据。

IMC限制通常表示内存控制器的最大容量或频率。最大容量限制指的是处理器所支持的最大内存容量,即可以安装在系统中的最大内存大小。最大频率限制指的是内存控制器所支持的最大内存频率,即内存模块的工作频率。

2.RAID1

RAID1又被称为镜像,至少也是需要两块磁盘才可以实现,工作原理就是吧一份完整的数据复制到其他磁盘里去,假设有两块磁盘组成RAID1,向RAID1存放数据的时候,两块磁盘内都会存入完全一模一样的数据,所以RAID1就是相当于自动备份。而且组建RAID1以后,系统上只会看见一块磁盘,这是所有阵列里最安全的,但是相应的他的空间利用率和速度是最低的。
RAID1
假设由两块1T的磁盘组成RAID1,你在系统内只能看到一块磁盘的容量,速度也是一块磁盘的速度,多了一个全自动备份功能。

3.RAID2

RAID2是一种利用海明码校验的一种阵列,主要目的是在RAID0的基础上增加数据纠错能力但并不是容灾,数据纠错能力指的是系统能够在数据传输或存储过程中检测并纠正数据错误的能力。容灾能力是指系统在面对灾难性事件(如自然灾害、人为破坏等)时,能够在较短时间内从灾难中恢复运行并保持正常的业务连续性。
RAID2以数据的第2的n次方为校验文件,也就是1、2、4、8、16、32位是用来纠错的校验码,其他的位置才是原始数据,假设有一个4位编码的数据需要存储,那就需要7块磁盘1 2 4存放校验码,3567是存放数据。假设有8位编码的数据,那么1 2 4 8是拿来存放校验码,35679 10 11 是存放数据,所以RAID2的编码数据位数越少磁盘利用率越低。
RAID2

由于一次写入数据可以往多块磁盘里写入,所以和RAID0有比较相似的并发性能,但是由于还需要计算校验码,读取的时候也需要读取校验码用于纠错,所以性能开销比较大所以使用的人很少。

4.RAID3和RAID4

RAID3的实现至少需要3块磁盘,在RAID0的基础上增强容灾能力。假设用三块磁盘组成RAID0,这时候再增加一块磁盘作为第四块,第四块磁盘存放着前面三块磁盘的恢复码,在前三块磁盘任意一块出现故障的时候,靠着剩下两块磁盘的数据和恢复码就可以恢复丢失的磁盘的数据,而恢复码的磁盘即使损坏了也不会影响前面三个磁盘的使用。
由于前面三块磁盘和RAID0一样,仅仅只是最后多了校验磁盘,和RAID2海明码的一堆纠错码不同,恢复码的性能消耗比较少,所以RAID3的性能非常接近RAID0。
RAID3
RAID4和RAID3很像,也是在RAID0的基础上增加一块恢复码磁盘,假设RAID3和4都是3数据盘和1恢复盘,要存储一个文件,被分成了3组,三组数据需要分别存储到磁盘内,RAID3是3组数据依次拆分加上那一组的数据恢复码写入磁盘,RAID4则是123组直接准备好,再为123组的数据整体准备一个恢复码,再把三组数据和整体的恢复码写进去。
这俩的区别就是,RAID3是将1个数据块拆分分开存,校验码也是针对拆分的部分去进行计算的,RAID4是直接按区块去进行存储,校验码是一块计算写入,容灾能力都是一块磁盘。问题就在,假设增加到了5块、10块数据盘,恢复盘始终都是一块,数据盘越来越多,只有一个恢复盘会制约整个阵列的性能。恢复盘的数据没有写入完成,下一次写入是没办法进行的。

5.RAID5和RAID6

RAID5将磁盘恢复码不再单独存放在恢复盘,而是直接拆分开,每一块磁盘里都储存一部分恢复码,这样恢复码的写入操作就是由4快磁盘共同完成,假设其中第三块磁盘无法读取,B1 B2 B3都在不需要恢复,A1+A2+Ap可以恢复A3,C1+Cp+C3可以恢复C2,Dp+D1+D3可以恢复D2。
所以RAID5一方面可以做到RAID0相似的性能还增加了一块磁盘的容灾能力,还解决了RAID4恢复码的瓶颈,所以民用层面RAID5是使用最多的一种磁盘。
RAID5
需要注意的是做raid 5阵列所有磁盘容量必须一样大,当容量不同时,会以最小的容量为准。 最好硬盘转速一样,否则会影响性能,而且可用空间=磁盘数n-1,Raid 5 没有独立的奇偶校验盘,所有校验信息分散放在所有磁盘上, 只占用一个磁盘的容量。
RAID6的恢复码相对于RAID5从一组变成了2组,下图中黄 绿为恢复码部分,即使损坏了两块磁盘,数据依然能找回,这就让RAID6有了两块磁盘的容灾能力。
RAID6

6.RAID7

RAID 7 全称叫“Optimized Asynchrony for High I/O Rates as well as high Data Transfer Rates(最优化的异步高 I/O 速率和高数据传输率)”,它与以前我们见到 RAID 级别具有明显的区别。RAID 7 完全可以理解为一个独立存储计算机,它自身带有操作系统和管理工具,完全可以独立运行。大多数用户用不到。
RAID7
感兴趣可自行搜索:https://www.leixue.com/ask/what-is-raid7

7.RAID10

RAID除了基础单个存在之外,还可以嵌套使用,RAID10就是比较常用的一种。
首先创建2个独立的Raid1,然后将这两个独立的Raid1组成一个Raid0,当往这个逻辑Raid中写数据时,数据被有序的写入两个Raid1中。磁盘1和磁盘2组成一个Raid1,磁盘3和磁盘4又组成另外一个Raid1;这两个Raid1组成了一个新的Raid0。如写在硬盘1上的数据1、3、5、7,写在硬盘2中则为数据1、3、5、7,硬盘中的数据为0、2、4、6,硬盘4中的数据则为0、2、4、6,因此数据在这四个硬盘上组合成Raid10,且具有raid0和raid1两者的特性。
RAID10
虽然Raid10方案造成了50%的磁盘浪费,但是它提供了200%的速度和单磁盘损坏的数据安全性,并且当同时损坏的磁盘不在同一Raid1中,就能保证数据安全性。假如磁盘中的某一块盘坏了,整个逻辑磁盘仍能正常工作的。
当我们需要恢复RAID10中损坏的磁盘时,只需要更换新的硬盘,按照RAID10的工作原理来进行数据恢复,恢复数据过程中系统仍能正常工作。原先的数据会同步恢复到更换的硬盘中。


BIOS下组建RAID

[主板]Intel 500系列或之前/AMD主板 BIOS下如何组建RAID可以参考:https://www.asus.com.cn/support/FAQ/1045089/
[主板]Intel 600或700系列BIOS下如何组建RAID可以参考:https://www.asus.com.cn/support/FAQ/1047139

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/625720.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue中使用component中的is渲染组件如何使用,:is 等价 v-if渲染组件。

动态组件顾名思义动态加载不同的组件&#xff0c;is属性用于加载不同组件&#xff0c;传参使用属性传递 1、使用v-for遍历component&#xff0c;组件都会执行 <componentv-for"(item, index) in TAB_PANE":key"index":is"item.componentName"…

Java多线程——并发和并行、实现方法

多线程 并发和并行 实现方法 代码演示 方式一 package com.qiong.thread1;public class MyThread extends Thread{Overridepublic void run() {for (int i 0; i < 20; i) {System.out.println(getName() "Hello World");}} }package com.qiong.thread1;public…

运筹说 第65期 | 动态规划的基本概念和基本原理

20世纪50年代初&#xff0c;美国数学家R. Bellman 等人在解决多阶段决策优化问题时提出了一种高效的求解方法——动态规划&#xff08;Dynamic Programming&#xff09;&#xff0c;该方法基于多阶段决策优化问题的特点&#xff0c;把多阶段问题转换为一系列互相联系的单阶段问…

2024抖店选品方法,及侧重方向思路(全新版本),可收藏备用

我是王路飞。 做无货源抖店的商家&#xff0c;牢记【选品重于泰山】这句话。 要知道电商的本质就是产品&#xff0c;你所有的运营手段也都是围绕产品进行的&#xff0c;店铺内的流量也都是冲着产品来的。 产品不行&#xff0c;哪怕再多的流量、再高的曝光率&#xff0c;也带…

2024年全网最全春招时间线

2024年全网最全春招时间线 春招&#xff0c;许多同学可能会误以为这是春天才会进行。 你可能会想&#xff0c;期末刚考完试&#xff0c;先享受下寒假&#xff0c;再欢度春节&#xff0c;收些红包&#xff0c;甚至还能抽空去理个发型。等到春日明媚时&#xff0c;再参加春招活…

linux docker安装 rustdesk

这里写自定义目录标题 1&#xff1a;软件介绍&#xff1a;2&#xff1a;安装1. 服务器端2. 客户端 3&#xff1a;配置5&#xff1a;其他1:rustdesk 官方Docker Compose 1&#xff1a;软件介绍&#xff1a; 名称作用官网项目地址rustdesk实现多端互控https://rustdesk.com/inde…

图书管理系统:从数据库设计到前端展示的实战经验分享

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

Arduino| 串口通讯、入门示例

Arduino串口通讯 为什么要做串口通讯串口通讯原理串口通讯函数字符串常用函数串口通讯示例入门示例测试串口通讯复杂指令处理 为什么要做串口通讯 串口通讯&#xff1a;串口通信是用来在不同电子设备之间交换数据用的技术&#xff0c;其实就是要实现不同电子设备之间的“通讯对…

C# Cad2016二次开发选择文本信息导出(六)

//选文本信息导出 [CommandMethod("getdata")] public void getdata() {// 获取当前文档和数据库Document doc Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;Database db doc.Database;Editor ed doc.Editor;// 获取当前…

vulnhub靶场之DC-9

一.环境搭建 1.靶场描述 DC-9 is another purposely built vulnerable lab with the intent of gaining experience in the world of penetration testing. The ultimate goal of this challenge is to get root and to read the one and only flag. Linux skills and famili…

Flink会话集群docker-compose一键安装

1、安装docker 参考&#xff0c;本人这篇博客&#xff1a;https://blog.csdn.net/taotao_guiwang/article/details/135508643?spm1001.2014.3001.5501 2、flink-conf.yaml flink-conf.yaml放在/home/flink/conf/job、/home/flink/conf/task下面&#xff0c;flink-conf.yaml…

C++输入输出和文件

文章目录 一. 流, 缓冲区和iostream文件二. 使用cout进行输出1. 用cout进行格式化2. 刷新输出缓冲区 三. 使用cin进行输入1. cin>>如何检查输入2. 流状态3. 其他istream类方法 四. 文件输入和输出1. 简单的文件I/O2. 文件模式3. 随机存取4. 内核格式化 To be continue...…

jmeter--6.跨线程组关联

目录 1. 跨线程组实现接口关联 2. 跨线程组实现Cookie关联 1. 跨线程组实现接口关联 1.1 根据json/正则的方式提取到需要的响应数据 1.2 在接口下新增一个BeanShell 后置处理器&#xff0c;并通过函数助手写入【${__setProperty(new_token,${access_token},)}】&#xff0c;…

Unet系列网络解析

Unet UNet最早发表在2015的MICCAI上&#xff0c;到2020年中旬的引用量已经超过了9700多次&#xff0c;估计现在都过万了&#xff0c;从这方面看足以见得其影响力。当然&#xff0c;UNet这个基本的网络结构有太多的改进型&#xff0c;应用范围已经远远超出了医学图像的范畴。我…

命名空间 “Eigen“ 没有成员 “SelfAdjointEigenSolver“

代码中用到SelfAdjointEigenSolver 结果报错&#xff1a;报错实在windows10条件下发生的。 查找资料&#xff0c;最后还是要定位到官方文档。 计算自伴随矩阵的特征值和特征向量。 这是在特征值模块中定义的。 添加如下引用即可解决&#xff0c;请点赞关注。 #include <…

设备之AP555【之一】

1、Audio Precision官网 Audio Precision 是声学及音频测试中公认的标准。AP提供了高性能声学和音频分析仪&#xff0c;配件和应用程序&#xff0c;帮助全球工程师设计&#xff0c;验证和制造消费电子、专业和工业的声学和音频产品。 APX555B 是具有三十年经验的测试设备&…

Java项目:120SpringBoot婚恋网站

博主主页&#xff1a;Java旅途 简介&#xff1a;分享计算机知识、学习路线、系统源码及教程 文末获取源码 一、项目介绍 婚恋网站是由SpringBootMybatis开发的&#xff0c;功能详细&#xff0c;满足婚恋网的基本要求。 主要功能如下&#xff1a; 登录注册用户浏览用户搜索成…

2024年腾讯云服务器多少钱1年?超便宜62元一年

腾讯云服务器租用价格表&#xff1a;轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元一年&#xff0c;540元三年、2核4G5M带宽218元一年&#xff0c;2核4G5M带宽756元三年、轻量4核8G12M服务器446元一年、646元15个月&#xff0c;云服务器CVM S5实例2核2G配置280.8元一年…

springCould中的Hystrix【下】-从小白开始【8】

目录 &#x1f9c2;1.熔断机制❤️❤️❤️ &#x1f32d;2.修改8001服务 ❤️❤️❤️ &#x1f95e;3.测试 ❤️❤️❤️ &#x1f953;4. 服务监控hystrixDashboard❤️❤️❤️ &#x1f32d;5.仪表盘❤️❤️❤️ &#x1f9c2;6.仪表盘的使用 ❤️❤️❤️ 1.熔断机…

数据库SELECT语句

文章目录 一、检索数据二、排序检索三、过滤数据四、数据过滤4.1 组合WHERE子句1. AND操作符2. OR操作符3. 计算次序 4.2 IN操作符4.3 NOT操作符 五、用通配符过滤LIKE操作符1. 百分号&#xff08;%&#xff09;通配符2. 下划线&#xff08;_&#xff09;通配符 使用通配符的技…