【服务器】RAID(独立磁盘冗余阵列)

RAID(独立磁盘冗余阵列)

    • 一、RAID的介绍
    • 二、RAID的分类#
      • 2-1 RAID 0
      • 2-2 RAID 1#
      • 2-3 RAID 3
      • 2-4 RAID 5
      • 2-5 RAID 6
      • 2-6 RAID 10(先做镜像,再做条带化)
      • 2-7 RAID 01(先做条带,再做镜像)
      • 2-8 RAID比较
    • 三、磁盘阵列卡
    • 四、RAID卡的接口类型:
    • 五、RAID热备盘

一、RAID的介绍

  • 独立硬盘冗余阵列,旧称廉价磁盘冗余阵列(RAID, Redundant Array of Inexpensive Disks),简称磁盘阵列。利用虚拟化存储技术把多个硬盘组合起来,成为一个或多个硬盘阵列组,目的为提升性能或减少冗余,或是两者同时提升。
    简单来说,RAID把多个硬盘组合成为一个逻辑硬盘,因此,操作系统只会把它当作一个实体硬盘
  • 常用的RAID级别:
    RAID0、RAID1、RAID5、RAID6、RAID1+0等。
    RAID技术主要有以下三个基本功能:
    通过对磁盘上的数据进行条带化,实现对数据成块存取,减少磁盘的机械寻道时间,提高了数据存取速度。
    通过对一个阵列中的几块磁盘同时读取,减少了磁盘的机械寻道时间,提高数据存取速度。
    通过镜像或者存储奇偶校验信息的方式,实现了对数据的冗余保护。
  • RAID实现的方式
    外接式磁盘阵列:通过扩展卡提供适配能力
    内接式RAID:主板集成RAID控制器,安装OS前在BIOS里配置
    软件RAID:通过OS实现,比如:群晖的NAS
    1-1 RAID存储方式#
    分块:将一个分区分成多个大小相等的、地址相邻的块,它是组成条带的元素
    条带:同一磁盘阵列中的多个磁盘驱动器上的相同“位置”(或者说相同编号)的分块
    1-2 RAID逻辑卷#
    我们常常将一块硬盘分成两个C盘和D盘(windows系统),这里的C盘和D盘就是逻辑卷,此处反过来,将多块硬盘虚拟成一块逻辑盘。

在这里插入图片描述

二、RAID的分类#

2-1 RAID 0

没有容错设计的条带硬盘阵列,以条带形式将RAID组的数据均匀分布在各个硬盘中。

优点:追求最大容量(将多个物理硬盘虚拟成一个逻辑磁盘)、读写速度,实现成本低。

缺点:RAID 0没有提供冗余或错误修复能力
在这里插入图片描述

总结:“Radi0一时爽,数据火葬场”

2-2 RAID 1#

RAID 1又称磁盘镜像,数据同时一致写到主硬盘和镜像硬盘。所以磁盘利用率只有50%。只要系统中任何一对镜像盘中至少有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行,当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据,具备很好的磁盘冗余能力

优点:追求最大安全性

缺点:磁盘利用率低,成本高
在这里插入图片描述

2-3 RAID 3

带有校验的并行数据传输阵列,数据条带化分布在数据盘中,同时使用专用校验硬盘存放校验数据

注意:有效容量 RAID 3=(N-1)*单块硬盘大小,其中N为硬盘总数量。
在这里插入图片描述

2-4 RAID 5

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

RAID5的读出效率很高,写入效率一般,块式的集体访问效率不错。因为奇偶校验码在不同的磁盘上,所以提高了可靠性。但是它对数据传输的并行性解决不好,而且控制器的设计也相当困难。

可靠性高,允许坏1块盘,不影响所有数据。
可用容量:N-1。磁盘利用率(N-1)/N。
RAID-5 是一种将存储性能、数据安全、存储成本兼顾的方案。是目前使用的最多的一种方式。
组建RAID 5最少3块盘,允许坏一块盘。
在这里插入图片描述

说明:P为奇偶校验校验和相应的数据
优点:兼顾到存储性能、数据安全和存储成本。

2-5 RAID 6

RAID 6技术是在RAID 5基础上,为了进一步加强数据保护而设计的一种RAID方式,实际上是一种扩展RAID 5等级。校验盘分为:横向校验盘和斜向校验盘

优点:快速的读取性能,数据冗余性好,更高的容错能力

缺点:很慢的写入速度,RAID控制器在设计上更加复杂,成本更高,因此RAID6在实际环境中应用的比较少
在这里插入图片描述

2-6 RAID 10(先做镜像,再做条带化)

将镜像和条带进行两级组合的RAID级别,第一级是RAID 1,第二级为RAID 0
RAID 10技术需要至少四块硬盘来组建,其中先分别两两制作成RAID 1磁盘阵列,以保证数据的安全性;然后再对两个RAID 1磁盘阵列实施RAID 0技术,进一步提高硬盘设备的读写速度。这样子从理论上讲,只要坏的不是同一组中的所有硬盘,那么最多可以损坏50%的硬盘设备而不丢失数据。RAID 10技术继承了RAID 0的高读写速度和RAID 1的数据安全性。

RAID 10也是一种应用广泛的RAID级别,磁盘利用率50%

优点:同时拥有RAID 0的超凡速度和RAID 1的数据高可靠性
缺点:CPU占用率高,而且磁盘的利用率比较低,这种新结构的可扩充性不好,成本高
在这里插入图片描述

2-7 RAID 01(先做条带,再做镜像)

N(偶数,N≥4)块盘先组合成一个RAID0,再组成一个RAID1。
读写性能与RAID 1+0相同;
由于RAID 0+1时,先做RAID 0,没有数据备份,因此数据可靠性来说比RAID 1+0要更差。 实际使用较少
在这里插入图片描述

2-8 RAID比较

在这里插入图片描述
在这里插入图片描述

三、磁盘阵列卡

阵列卡是用来实现RAID功能的板卡,通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列组件构成的。

不同的RAID卡支持的RAID功能不同:
例如支持RAID0、RAID1、 RAID5、 RAID10等

四、RAID卡的接口类型:

IDE接口、SCSI接口、SATA接口、SAS接口
阵列卡的缓存
缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,再由缓存和外边数据总线交换数据。
缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素,大缓存可以提高命中率
不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等

五、RAID热备盘

作用:相当于是在 raid里面再做一个备份,比如说本来Raid里面是只允许坏一个盘的情况下系统和数据依然正常运行,但是坏两个就不行了,但是加了热备之后就可以同时坏两个盘都没问题,就多了个保险。

原理:热备盘相当于帮Raid阵列多做多个备份,如果Raid陈列里其中一个盘坏了,这个热备盘就会顶替Raid里的那个坏盘,同时利用异或校验算法,把坏盘上面的数据原样做出来并存储在热备盘中。这样一来就等于Raid没受到损坏,然再找个一个同样的盘把坏盘替换掉,Raid和热备盘的状态又正常了。

配置磁盘阵列常见的命令:后续补充

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

国内最全的Spring Boot系列之七

• 阿里巴巴前高级研发工程师 • 三家千万级互联网企业技术顾问 • MBTI/盖洛普技术专家 • 厦门某高校外聘教师 • 51CTO特约合作讲师 • 网易云课堂签约讲师 •《深入理解设计模式》作者 一转眼马上要过年了,回首2023年,感觉自己无所事事、碌碌无…

探索网络定位与连接:域名和端口的关键角色

目录 域名 域名的作用 域名的结构 域名的解析配置 父域名、子域名​编辑 https的作用 端口 图解端口 端口怎么用 判断网站是否存活 端口的作用 域名 域名是互联网上用于标识网站的一种易于记忆的地址。 域名是互联网基础架构的一个重要组成部分,它为网…

Django学习记录01

1.项目结构 djangoProject02 ├── manage.py 【项目的管理,启动项目、创建app、数据管理】【不要动】【常常用】 └── jangoProject02 ├── __init__.py ├── settings.py 【项目配置】 【常常修改】 ├── urls.py …

为什么要配置环境变量?

华子目录 什么是环境变量?Path环境变量使用%%引用环境变量操作步骤 使用%%引用环境变量的优点 用户变量和系统变量的区别 什么是环境变量? 环境变量:一般是指再操作系统中用来指定操作系统运行环境的一些参数,如:临时…

SpringBoot注解--07-- lombok 注解

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1 Lombok介绍1.1 Lombok是什么?1.2 如何安装Lombok? 2 Lombok注解2.1 GetterSetter2.2 ToString2.3 EqualsAndHashCode2.4 NoArgsConstructor , Requi…

java仓库进销存商品库存管理系统springboot+vue

库存管理信息系统研究的内容涉及库存管理的全过程,包括入库、出库、退 货、订货、库存统计查询等等。 根据上述工作流程,库存管理系统将包含以下内容 1)登录信息的输入,密码的修改。 2)基本信息的输入,包括…

JAVA Web 学习(四)RabbitMQ、Zookeeper

十、消息队列服务器——RabbitMQ RabbitMQ是使用Erlang语言开发的开源消息队列系统,基于AMQP协议来实现。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、 安全。AMQP协议更多用在企业系统内,对数据一致性、稳定性和可靠性要求…

【实战】阿里智能编码助手通义灵码

文章目录 前言技术积累通义灵码是什么?Copilot是什么?通义灵码主要功能通义灵码有哪些优势?通义灵码支持语言/工具通义灵码接入方式通义灵码帮助中心 实战演示安装插件行/函数级实时续写自然语言生成代码代码优化单元测试生成代码注释生成解释…

Spring 事务原理总结三

今天这篇文章,我想梳理一下Spring事务用到的几个核心组件。这些核心组件是我们理解Spring事务原理的基础。通过它们我们可以体会学习一下Spring设计者设计Spring事务时的基本思路。这些组件是:TransactionInfo、TransactionStatus、TransactionManager、…

【Qt+MSVC2017_64bit +Cmake新建项目编译出错】

项目场景: 提示:这里简述项目相关背景: 项目新电脑环境配置 QtMSVC2017_64bit Cmake新建项目编译出错 问题描述 提示:这里描述项目中遇到的问题: QtMSVC2017_64bit Cmake新建项目编译出错 Running C:\Program Fil…

Java语法学习线程基础

Java语法学习线程基础 大纲 概念创建线程线程终止常用方法用户线程和守护线程线程的七大状态线程的同步互斥锁线程死锁释放锁 具体案例 1.概念 2. 创建线程 第一种: class Cat extends Thread {int time 0;Overridepublic void run() {while (true) {System.o…

Ubuntu 添加字体

Ubuntu 添加字体 Ubuntu如何添加新的字体?似乎远远没有Windows方便呀,查询了一些资料,与大家分享。 方法1 根据字体名称直接安装 oyroy-FMVU08001:~$ sudo apt-get install fonts-wqy-zenhei [sudo] roy 的密码: 正在读取软件…

基于springboot篮球竞赛预约平台源码和论文

随着信息化时代的到来,管理系统都趋向于智能化、系统化,篮球竞赛预约平台也不例外,但目前国内仍都使用人工管理,市场规模越来越大,同时信息量也越来越庞大,人工管理显然已无法应对时代的变化,而…

【数位dp】【动态规划】【KMP】1397. 找到所有好字符串

作者推荐 【动态规划】【字符串】【表达式】2019. 解出数学表达式的学生分数 本文涉及知识点 动态规划汇总 LeetCode1397. 找到所有好字符串 给你两个长度为 n 的字符串 s1 和 s2 ,以及一个字符串 evil 。请你返回 好字符串 的数目。 好字符串 的定义为&#x…

7隐藏进程_Linux_Rootkit.md

Xcellerator 密码学Linux其他逆向工程 文章目录 [Linux Rootkit 第 7 部分:隐藏进程](https://xcellerator.github.io/posts/linux_rootkits_07/)选择要隐藏的 PID隐藏 PID Linux Rootkit 第 7 部分:隐藏进程 2020-10-01 :: TheXcellerator # linux #…

Docker基础与持续集成

docker 基础知识: docker与虚拟机 !左边为虚拟机,右边为docker环境 – Server :物理机服务器Host OS :构建的操作系统Hypervisor :一种虚拟机软件,装了之后才能虚拟化操作系统Guest OS :虚拟化的操作系统…

xlsx xlsx-style 使用和坑记录

1 安装之后报错 npm install xlsx --savenpm install xlsx-style --save Umi运行会报错 自己代码 import XLSX from "xlsx"; import XLSXStyle from "xlsx-style";const data [["demo1","demo2","demo3","demo4&quo…

cesium-水平测距

cesium测量两点间的距离 <template><div id"cesiumContainer" style"height: 100vh;"></div><div id"toolbar" style"position: fixed;top:20px;left:220px;"><el-breadcrumb><el-breadcrumb-item&…

『运维备忘录』之 Cron 命令详解

运维人员不仅要熟悉操作系统、服务器、网络等只是&#xff0c;甚至对于开发相关的也要有所了解。很多运维工作者可能一时半会记不住那么多命令、代码、方法、原理或者用法等等。这里我将结合自身工作&#xff0c;持续给大家更新运维工作所需要接触到的知识点&#xff0c;希望大…

Logback学习

logback 1、logback介绍 Logback是由log4j创始人设计的另一个开源日志组件&#xff0c;性能比log4j要好。 lockback优点&#xff1a; 内核重写、测试充分、初始化内存加载更小&#xff0c;这一切让logback性能和log4j相比有诸多倍的提升。logback非常自然地直接实现了slf4j…