
RAID 0 单纯追求速度零容错RIAD 1 单纯追求安全零提速空间。两者是 RAID 家族里最基础、最极端的两个对立面所有其他 RAID 级别5/6/10都是在它们基础上做折中。一、RAID 0条带化Striping工作原理把数据切成条带并行写到多块硬盘上。数据 [A B C D E F] ↓ 盘1: [A] [C] [E] ← 同时写 盘2: [B] [D] [F] ← 同时写核心特征维度RAID 0最少盘数2 块容量利用率100%n × 单盘容量容错能力0读性能极高n 倍提升写性能极高n 倍提升致命缺陷任意一块盘损坏 整个阵列数据全部丢失。因为每块盘只存了数据的一部分缺任何一块都拼不出完整数据。⚠️ 一块盘坏全盘报废——这是 RAID 0 的必然结果。二、RAID 1镜像Mirroring工作原理把数据同时写入两块硬盘两块盘内容完全一致。数据 [A B C D] ↓ 盘1: [A B C D] ← 完整副本 盘2: [A B C D] ← 完整副本核心特征维度RAID 1最少盘数2 块容量利用率50%n/2 × 单盘容量容错能力✅ 1 块盘坏读性能高可并行读不同块写性能中等要写两次典型场景系统盘、数据库redo log、关键业务数据核心优势容错能力强一块盘彻底损坏另一块盘仍然完整可用恢复简单换上新盘重新同步即可不需要复杂的重建算法读性能好可以从两块盘同时读不同数据权衡写性能略有损失同样的数据要写两次成本高50% 的容量利用率意味着同样的存储量要多花一倍钱事实某些场景是合理的。比如Redis 缓存节点、Kubernetes 的 ephemeral 存储、CI/CD 构建节点——这些场景下数据本身就是可丢失的反而需要 RAID 0 的高吞吐。RAID 0 是用可靠性换性能RAID 1 是用容量换可靠性。真正生产环境里两者单独使用都有明显短板——所以才有了 RAID 10速度冗余兼得和 RAID 5/6容量单/双盘容错来填补空白。这个说法大体方向是对的但有例外尤其是 NVMe 普及后。准确说法是企业级服务器绝大多数硬盘都通过 RAID 卡或 HBA 卡接入而普通 PC 的硬盘直接连主板——中间差了这一层正是服务器和普通 PC 在存储架构上的根本分野。一、服务器为什么非要多这一层普通 PC 里操作系统直接指挥硬盘读写服务器里操作系统看到的硬盘其实是一块 RAID 卡虚拟出来的逻辑盘物理硬盘并不直接暴露给 OS。RAID 卡本质上是一块插在主板 PCIe 插槽上的微型存储计算机自带 CPUASIC/ARM、DDR 缓存、固件、电池/电容。它承担四件事功能对业务的意义数据冗余RAID 1/5/6/10 允许 1~2 块盘同时坏而不丢数据性能叠加RAID 0/10 通过并行读写把 IOPS 与带宽线性放大缓存加速 断电保护写数据先进缓存再刷盘BBU 电池能在断电后维持 24-72 小时保命简化管理OS 只看到一块超级硬盘不用关心背后有几块物理盘 关键价值软 RAID 依赖主机 CPU 做 XOR 校验RAID 5/6 高负载下可能吃掉 30% CPU硬件 RAID 卡独立运算CPU 占用几乎为零。二、服务器里的真实连接链路一台典型 2U 服务器的存储链路是这样的[硬盘] → [背板 Backplane] → [Mini-SAS 线缆] → [RAID 卡] → [主板 PCIe 插槽] → [CPU] ↑ ↑ ↑ 固定供电 SAS 信号传输 RAID 运算缓存每一步的作用硬盘 → 背板硬盘插在前面板的金属托架上针脚嵌入背板。背板负责统一供电和信号分配到对应端口背板 → RAID 卡一根 Mini-SAS 线缆SFF-8087 或 SFF-8643把背板和 RAID 卡连起来一块 8 端口 RAID 卡能带 8 块盘直连挂 expander 扩展芯片能扩展到上百块RAID 卡 → 主板RAID 卡插在主板的 PCIe 插槽上通过 PCIe 总线与 CPU 交换数据→ CPURAID 卡做完 RAID 运算后通过 PCIe 总线把数据传给 CPU 处理HPE 官方安装文档里写的就是这条路径用随服务器提供的内部 SAS 线缆把控制器的内部连接器连接到热插拔硬盘笼——本质就是上述链路。三、普通 PC 的连接方式不重要普通 PC 没有背板、没有 RAID 卡、没有 SAS 线缆架构简化成这样[硬盘] → [SATA 数据线] → [主板 SATA 接口] → [PCH 芯片组] → [CPU] ↑ ↑ 15针电源线 主板原生直连SATA 接口直接做在主板的 PCH平台控制器中枢俗称南桥上每块硬盘独占一条 SATA 通道物理上不存在主从仲裁。Windows/Linux 直接通过 AHCI 协议指挥硬盘不做任何硬件层面的 RAID 虚拟化。⚠️ 普通 PC 也能做 RAID但那是软 RAIDWindows 存储空间、Linux mdadm依赖 CPU 算校验性能和可靠性跟硬件 RAID 卡不在一个量级。四、一个踩坑高发点SAS 与 SATA 的不对称兼容性这是服务器硬盘为什么大多要走 RAID 卡的另一层原因——普通 PC 主板根本认不出它方向结果SAS 控制器RAID 卡→ 插 SATA 硬盘✅向下兼容能识别SATA 控制器普通主板→ 插 SAS 硬盘❌反向不兼容认不出原因是 SAS 接口比 SATA 多出 7 个针脚用于支持双端口冗余和全双工通信普通 SATA 主板既没这 7 根针也没 SAS 协议栈强行插进去只会隐身。所以服务器硬盘尤其是 SAS 接口的没法直接插普通 PC 用——这也是为什么服务器一定配 RAID 卡/HBA 卡的原因之一。五、NVMe 时代这条链路的演变随着 NVMe SSD 普及服务器的连接架构正在分化传统 SAS/SATA SSD → 仍走 SSD → 背板 → SAS 线缆 → RAID 卡 → PCIe → CPUU.2/U.3 NVMe SSD → 可以走 SSD → 背板 → PCIe 直连 CPU每个盘独占 x4 PCIe 通道RAID 卡的角色被弱化M.2 NVMe系统盘 → 直接插主板 M.2 插槽连到 PCH我这里会同时提到RAID 模式、HBA 直通模式、Mixed 混合模式——NVMe 时代越来越多场景倾向于把盘直通给 OSZFS/Ceph/vSAN 自己管冗余RAID 卡反而成了累赘。服务器硬盘都接在 RAID 卡上这句话折射的是企业级存储对冗余、性能、可管理性的硬性要求——普通 PC 没有这些要求所以架构可以简单粗暴地直连主板。反过来也成立如果你给普通 PC 加上硬件 RAID 卡和背板它就具备了服务器级别的存储能力。RAID 是把多块磁盘组合成一个逻辑存储系统以实现性能提升、容量扩展或容错。不同 RAID 的核心区别在于是否做条带化、镜像、校验以及允许坏几块盘。常见 RAID 对比RAID级别原理最少磁盘可用容量可坏盘数性能特点RAID 0条带化无冗余2所有磁盘总容量0读写快无容错RAID 1镜像2约一半1可靠容量利用率低RAID 5条带化 单校验3(磁盘数-1) × 单盘容量1容量利用率较好写入有校验开销RAID 6条带化 双校验4(磁盘数-2) × 单盘容量2容错更强写入和重建更慢RAID 10RAID 1 RAID 04约一半通常可坏多盘但不能坏同一镜像组的两盘性能和可靠性都较好RAID 50多组 RAID 5 再做 RAID 06左右多组 RAID 5 容量之和每组可坏1盘比 RAID 5 更适合大规模RAID 60多组 RAID 6 再做 RAID 08左右多组 RAID 6 容量之和每组可坏2盘容错强容量和性能损耗较大1. RAID 0只追求速度数据 A → 磁盘1、磁盘2、磁盘3 分片写入优点读写性能高容量利用率 100%成本低。缺点没有任何冗余坏一块盘整个阵列数据通常都不可用。适合临时数据缓存可重建的数据对可靠性不敏感的场景。不适合操作系统数据库文件服务器重要业务数据。2. RAID 1镜像简单可靠磁盘1A B C 磁盘2A B C两块盘保存完全相同的数据。优点一块盘损坏系统仍可运行恢复和更换简单读取性能可能提升。缺点可用容量只有约 50%写入性能通常不如 RAID 0只能有效容忍镜像中的一块盘损坏。适合系统盘小型服务器数据量不大的关键服务。3. RAID 5单盘容错RAID 5 使用数据条带化并保存校验信息。例如三块盘盘1数据 盘2数据 盘3校验校验信息会分布在不同磁盘上不是固定放在某一块盘。优点一块盘损坏仍可运行容量利用率比 RAID 1 高读取性能较好。缺点写入需要计算校验大容量磁盘重建时间长重建期间性能下降重建过程中如果再坏一块盘阵列可能失效不适合现代大容量磁盘上的高风险关键数据。容量示例4块 4TB 磁盘 RAID 5 可用容量约12TB4. RAID 6双盘容错RAID 6 相当于保存两组独立校验信息。优点同时坏两块盘通常仍可运行比 RAID 5 更适合大容量磁盘和大规模阵列重建期间安全性更高。缺点至少损失两块盘的容量写入性能比 RAID 5 更低重建仍然可能耗时较长。容量示例6块 4TB 磁盘 RAID 6 可用容量约16TB5. RAID 10性能和可靠性的平衡RAID 10 是先做 RAID 1 镜像 再做 RAID 0 条带四块盘可以理解为镜像组1盘1 盘2 镜像组2盘3 盘4 两个镜像组再做条带优点随机读写性能好延迟低重建速度通常比 RAID 5/6 快适合高 I/O 业务一般比 RAID 5 更适合数据库。缺点可用容量约 50%如果同一镜像组的两块盘都损坏阵列会失效。容量示例4块 4TB 磁盘 RAID 10 可用容量约8TBRAID 5、RAID 6 和 RAID 10 怎么选选 RAID 5适合磁盘数量较少读多写少对容量利用率较看重磁盘容量不太大有可靠备份。选 RAID 6适合大容量磁盘文件服务器备份仓库存储容量优先需要同时容忍两块盘故障。选 RAID 10适合数据库虚拟化平台高频随机读写交易系统对性能和低延迟要求高的业务。通常可以简单记忆性能优先RAID 10 容量和双盘容错优先RAID 6 容量利用率和一般业务RAID 5 绝不能容忍数据丢失但容量不大RAID 1热备盘是什么热备盘不是 RAID 级别而是备用磁盘。当阵列中的磁盘损坏时控制器可以自动使用热备盘进行重建。类型包括全局热备为多个阵列提供备用专用热备只服务某一个阵列热插拔盘可以在线更换但不等于热备盘。例如8块盘组成 RAID 6 第9块盘作为热备盘坏盘后热备盘自动加入重建。硬 RAID 和软 RAID硬件 RAID由 RAID 控制器完成阵列计算。优点对操作系统透明通常性能稳定支持缓存和掉电保护企业服务器常见。缺点依赖 RAID 控制器控制器故障可能影响阵列识别更换控制器时需要兼容型号或导入配置。软件 RAID由操作系统完成。Linux 常见mdadm LVM RAID ZFS Btrfs RAID优点成本低灵活不依赖特定 RAID 卡阵列迁移方便。缺点占用系统 CPU 和内存配置、监控和恢复需要运维能力不同软件方案的可靠性和功能差异较大。RAID 不等于备份一句话总结**RAID 速记短文**RAID 就是把多块盘组合成一个逻辑存储系统核心看三件事**条带、镜像、校验**。记住口诀**0 快、1 镜像、5 单校验、6 双校验、10 先镜像再条带50/60 是分组后再条带。**| RAID | 最小硬盘数 | 一句话记忆 | 可坏盘 ||---|---:|---|---|| RAID 0 | **2** | 只条带、无冗余最快但坏一块全丢 | 0 || RAID 1 | **2** | 镜像复制简单可靠但容量约一半 | 1 || RAID 5 | **3** | 条带单校验容量利用率较好 | 1 || RAID 6 | **4** | 条带双校验大容量存储更稳 | 2 || RAID 10 | **4** | 先镜像再条带性能与可靠性平衡 | 同镜像组不能双坏 || RAID 50 | **6** | 多组 RAID 5 再条带 | 每组可坏 1 块 || RAID 60 | **8** | 多组 RAID 6 再条带 | 每组可坏 2 块 |**容量速记**RAID 0 全用RAID 1、RAID 10 约一半RAID 5 是 (盘数-1)×单盘RAID 6 是 (盘数-2)×单盘RAID 50/60 按各组容量相加。**选型速记**要性能选 **RAID 10**要容量和双盘容错选 **RAID 6**一般容量利用率选 **RAID 5**小规模关键数据选 **RAID 1**RAID 0 只适合临时、可重建数据。**最后两句最重要**热备盘是坏盘后自动顶上的备用盘不是 RAID 级别**RAID 提高可用性不等于备份**生产环境要 **RAID 定期备份 异地/离线副本 恢复演练**。RAID 0快但坏一块全丢RAID 1镜像简单可靠但浪费容量RAID 5坏一块容量利用率较好RAID 6坏两块适合大容量存储RAID 10性能好适合数据库和虚拟化热备盘坏盘后自动顶上