raid存储技术

news2025/12/15 13:40:52

1. 存储技术概念

        数据存储架构是对数据存储方式、存储设备及相关组件的组织和规划,涵盖存储系统的布局、数据存储策略等,它明确数据如何存储、管理与访问,为数据的安全、高效使用提供支撑。

        由计算机中一组存储设备、控制部件和管理信息调度的设备(硬件)和算法(软件)所构成的系统。

常见的存储系统主要由这三部分组成:

  • 主机系统(物理部件(硬件)和逻辑部件(软件))
  • 互连部件(互连物理部件(总线端口,线缆),互连逻辑部件(通信协议,设备驱动))
  • 存储设备(负责数据存储的设备,硬盘,光盘,电源等)

2. raid存储概念

2.1 冗余

冗余指系统的一些重要部件重复配置,当发生故障时冗余配置的部件可以介入并承担故障部件的工作,甚至可以对系统进行修复,有助于系统容错,保障业务持续稳定运行。

2.2 raid技术概念

RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)技术,该项技术可简称为磁盘阵列,可以理解为通过组合多个磁盘提升性能与可靠性。

2.3 raid的分类

基于硬件的RAID磁盘阵列技术(俗称硬RAID)
基于软件的RAID磁盘阵列技术(俗称软RAID)

2.4 raid的阵列级别

根据RAID磁盘阵列对磁盘数据分布、校验方式及实施技术的不同,可以将磁盘阵列分为多个级别,分别为RAID 0、RAID 1、RAID 2、RAID 3、RAID 4、RAID 5、RAID 6、RAID 10

RAID 0(条带化,提升性能但无冗余)、RAID1(镜像,有冗余)、RAID 3(一个冗余校验盘)、RAID
5(分布式奇偶校验,兼顾性能与冗余)、RAID 6级别较为常用。

  • raid 0——无容错条带化磁盘阵列,至少两个硬盘即可(数据分条,硬盘分块,同时并行处理,提升性能,读写速度,成本低,但是没有冗余功能,不适合存储重要数据)利用率——100%    
  • vg:侧重于提高磁盘管理的灵活性,允许动态调整逻辑卷的大小,适合需要灵活存储管理的场景.
  • raid 1——简单的镜像备份,实现数据冗余,数据盘和镜像盘是相对的,互为镜像与恢复。安全性高一点,成本贵,写入速度较慢,读取速度快。
  • raid 2——0的改良版,相比0的利用率低,插入汉明码(校验码,纠错机制) 利用率50%        
  • raid 3——在2的基础上,以位为单位数据分割,奇偶校验码,适用大文件类型以及安全性要求高一点的,利用率80%                                          
  • raid 4——硬盘分块,块写入内存(缓冲), cpu处理数据,以块为单位                                 
  • raid 5——奇偶校验码信息和对应数据存储正在不同的硬盘上(最少3块)                                
  • raid 6——raid5的基础上,至少四块硬盘。增加了2个独立的奇偶校验信息块(算法不同的双重校验),容错能力更强,读块写慢。适合数据/信息中心,成本高                                          
  • raid 1+0——结合0和1的磁盘阵列,条带化技术加上镜像备份技术(50%)

3. raid软存储和硬存储

3.1 硬存储

全部通过用硬件来实现RAID功能的就是硬RAID,比如:各种RAID卡,还有主板集成能够做的RAID都是硬RAID。

raid阵列卡:RAID 核心处理芯片( RAID 卡上的 CPU )、端口、缓存、电池

SATA阵列卡:主要作用于大容量数据存储、网吧、数据安全等服务器领域,同时一些低端卡也满足了一些家用客户的需求。

SCSI阵列卡:使用在高端工作站或者是服务器中,可以支持很多块SCSI接口的硬盘。能够支持RAID 0、1、0+1、3、5 。

SAS阵列卡: 主要使用在一些高端工作站与服务器中,已经取代了昔日的SCSI接口,并且可以兼容SATA接口硬盘。

阵列卡缓存:是阵列卡先将数据传输到缓存,再由缓存和外边数据总线交换数据的一种过程。

  • 透写(数据直接写入磁盘)
  • 回写(数据先将数据写入缓存(缓冲),在写入磁盘中)

RAID 电池的作用: 用以在系统断电时保护Cache中的数据,避免断电造成中间数据的丢失

3.2 软存储

mdadm:是一个在Linux系统中用于构建、管理和监控软件RAID阵列的工具。

dadm命令常见参数:
Ø -a {yes|no} 自动为其创建设备文件
Ø -n 指定设备数量
Ø -l 指定RAID级别
Ø -C 创建
Ø -v 显示过程
Ø -f 模拟设备损坏
Ø -r 移除设备
Ø -Q查看摘要信息
Ø -D 查看详细信息
Ø -S 停止RAID磁盘阵列
Ø -c 指定数据块大小(chunk)
Ø -x 指定空闲盘(热备磁盘)个数,空闲盘(热备磁盘)能在工作盘损坏后自动顶替

创建raid的过程(raid 5):

  • 最少准备3块硬盘,并完成分区,分区格式改为Linux raid autodetect
  • 使用mdadm命令创建raid设备,并查看
  • 创建raid设备的挂载目录,并挂载
  • 创建raid配置文件写入raid设备进行管理(1、mdadm -vDs >> /etc/mdadm.conf  2、vim /etc/mdadm/mdadm.conf)
  • 关闭和启动raid设备(mdadm -S/A    raid设备名)

常见操作:

管理模式: 选项:-a(--add),-d(--del),-r(--remove),-f(--fail)

1、模拟损坏: mdadm raid名  -f   磁盘名

2、移除损坏的磁盘: mdadm raid名  -r   磁盘名

3、添加新的硬盘到已有阵列: mdadm raid名  -a  磁盘名

正确删除linux中软raid的方法:

  • 先umount组建好的raid:umount  raid名
  • 停止raid设备:mdadm -S raid名
  • 删除配置文件:rm -f /etc/mdadm/mdadm.conf
  • 如果之前将raid相关信息写入了/etc/fstab配置文件中, 还需vim /etc/fstab,将raid相关的内容删除即可。

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

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

相关文章

EasyRTC音视频实时通话功能在WebRTC与智能硬件整合中的应用与优势

一、WebRTC与智能硬件整合趋势​ 随着物联网和实时通信需求的爆发式增长,WebRTC作为开源实时通信技术,为浏览器与移动应用提供免插件的音视频通信能力,在智能硬件领域的融合应用已成必然趋势。智能硬件不再局限于单一功能,对实时…

【版本控制】GitHub Desktop 入门教程与开源协作全流程解析

目录 0 引言1 GitHub Desktop 入门教程1.1 安装与基础配置1.2 核心功能使用指南仓库管理日常开发流程分支管理 2 GitHub 开源协作流程详解2.1 Fork & Pull Request 模型2.2 完整协作流程步骤步骤 1: Fork(创建个人副本)步骤 2: Clone(克隆…

Android屏幕刷新率与FPS(Frames Per Second) 120hz

Android屏幕刷新率与FPS(Frames Per Second) 120hz 屏幕刷新率是屏幕每秒钟刷新显示内容的次数,单位是赫兹(Hz)。 60Hz 屏幕:每秒刷新 60 次,每次刷新间隔约 16.67ms 90Hz 屏幕:每秒刷新 90 次,…

【PX4飞控】mavros gps相关话题分析,经纬度海拔获取方法,卫星数锁定状态获取方法

使用 ROS1-Noetic 和 mavros v1.20.1, 携带经纬度海拔的话题主要有三个: /mavros/global_position/raw/fix/mavros/gpsstatus/gps1/raw/mavros/global_position/global 查看 mavros 源码,来分析他们的发布过程。发现前两个话题都对应了同一…

ubuntu中安装conda的后遗症

缘由: 在编译rk3588的sdk时,遇到编译buildroot失败,提示如下: 提示缺失expect,但是实测相关工具是在的,如下显示: 然后查找借助各个ai工具,重新安装相关的工具,依然无解。 解决&am…

【Java多线程从青铜到王者】单例设计模式(八)

wait和sleep的区别 我们的wait也是提供了一个还有超时时间的版本,sleep也是可以指定时间的,也就是说时间一到就会解除阻塞,继续执行 wait和sleep都能被提前唤醒(虽然时间还没有到也可以提前唤醒),wait能被notify提前唤醒&#xf…

react菜单,动态绑定点击事件,菜单分离出去单独的js文件,Ant框架

1、菜单文件treeTop.js // 顶部菜单 import { AppstoreOutlined, SettingOutlined } from ant-design/icons; // 定义菜单项数据 const treeTop [{label: Docker管理,key: 1,icon: <AppstoreOutlined />,url:"/docker/index"},{label: 权限管理,key: 2,icon:…

VSCode 使用CMake 构建 Qt 5 窗口程序

首先,目录结构如下图: 运行效果: cmake -B build cmake --build build 运行: windeployqt.exe F:\testQt5\build\Debug\app.exe main.cpp #include "mainwindow.h"#include <QAppli

Win系统权限提升篇UAC绕过DLL劫持未引号路径可控服务全检项目

应用场景&#xff1a; 1、常规某个机器被钓鱼后门攻击后&#xff0c;我们需要做更高权限操作或权限维持等。 2、内网域中某个机器被钓鱼后门攻击后&#xff0c;我们需要对后续内网域做安全测试。 #Win10&11-BypassUAC自动提权-MSF&UACME 为了远程执行目标的exe或者b…

Qwen系列之Qwen3解读:最强开源模型的细节拆解

文章目录 1.1分钟快览2.模型架构2.1.Dense模型2.2.MoE模型 3.预训练阶段3.1.数据3.2.训练3.3.评估 4.后训练阶段S1: 长链思维冷启动S2: 推理强化学习S3: 思考模式融合S4: 通用强化学习 5.全家桶中的小模型训练评估评估数据集评估细节评估效果弱智评估和民间Arena 分析展望 如果…

RushDB开源程序 是现代应用程序和 AI 的即时数据库。建立在 Neo4j 之上

一、软件介绍 文末提供程序和源码下载 RushDB 改变了您处理图形数据的方式 — 不需要 Schema&#xff0c;不需要复杂的查询&#xff0c;只需推送数据即可。 二、Key Features ✨ 主要特点 Instant Setup: Be productive in seconds, not days 即时设置 &#xff1a;在几秒钟…

表单设计器拖拽对象时添加属性

背景&#xff1a;因为项目需要。自写设计器。遇到的坑在此记录 使用的拖拽组件时vuedraggable。下面放上局部示例截图。 坑1。draggable标签在拖拽时可以获取到被拖拽的对象属性定义 要使用 :clone, 而不是clone。我想应该是因为draggable标签比较特。另外在使用**:clone时要将…

CSS 工具对比:UnoCSS vs Tailwind CSS,谁是你的菜?

在现代前端开发中&#xff0c;Utility-First (功能优先) CSS 框架已经成为主流。其中&#xff0c;Tailwind CSS 无疑是市场的领导者和标杆。然而&#xff0c;一个名为 UnoCSS 的新星正以其惊人的性能和极致的灵活性迅速崛起。 这篇文章将深入探讨这两款工具的核心理念、技术差…

Qt的学习(二)

1. 创建Hello Word 两种方式&#xff0c;实现helloworld&#xff1a; 1.通过图形化的方式&#xff0c;在界面上创建出一个控件&#xff0c;显示helloworld 2.通过纯代码的方式&#xff0c;通过编写代码&#xff0c;在界面上创建控件&#xff0c; 显示hello world&#xff1b; …

工厂方法模式和抽象工厂方法模式的battle

1.案例直接上手 在这个案例里面&#xff0c;我们会实现这个普通的工厂方法&#xff0c;并且对比这个普通工厂方法和我们直接创建对象的差别在哪里&#xff0c;为什么需要一个工厂&#xff1a; 下面的这个是我们的这个案例里面涉及到的接口和对应的实现类&#xff1a; 两个发…

鸿蒙Navigation路由导航-基本使用介绍

1. Navigation介绍 Navigation组件是路由导航的根视图容器&#xff0c;一般作为Page页面的根容器使用&#xff0c;其内部默认包含了标题栏、内容区和工具栏&#xff0c;其中内容区默认首页显示导航内容&#xff08;Navigation的子组件&#xff09;或非首页显示&#xff08;Nav…

CMS内容管理系统的设计与实现:多站点模式的实现

在一套内容管理系统中&#xff0c;其实有很多站点&#xff0c;比如企业门户网站&#xff0c;产品手册&#xff0c;知识帮助手册等&#xff0c;因此会需要多个站点&#xff0c;甚至PC、mobile、ipad各有一个站点。 每个站点关联的有站点所在目录及所属的域名。 一、站点表设计…

ZYNQ学习记录FPGA(二)Verilog语言

一、Verilog简介 1.1 HDL&#xff08;Hardware Description language&#xff09; 在解释HDL之前&#xff0c;先来了解一下数字系统设计的流程&#xff1a;逻辑设计 -> 电路实现 -> 系统验证。 逻辑设计又称前端&#xff0c;在这个过程中就需要用到HDL&#xff0c;正文…

Java中HashMap底层原理深度解析:从数据结构到红黑树优化

一、HashMap概述与核心特性 HashMap作为Java集合框架中最常用的数据结构之一&#xff0c;是基于哈希表的Map接口非同步实现。它允许使用null键和null值&#xff08;但只能有一个null键&#xff09;&#xff0c;并且不保证映射顺序的恒久不变。与Hashtable相比&#xff0c;Hash…

【记录坑点问题】IDEA运行:maven-resources-production:XX: OOM: Java heap space

问题&#xff1a;IDEA出现maven-resources-production:operation-service: java.lang.OutOfMemoryError: Java heap space 解决方案&#xff1a;将编译的堆内存增加一点 位置&#xff1a;设置setting-》构建菜单build-》编译器Complier