RAID
软 RAID(Redundant Array of Independent Disks)是一种利用多个物理磁盘来建立容错机制的技术,可以提升磁盘读写效率的同时,也可以为数据提供冗余备份,保护数据的安全性。
在Linux系统中,软 RAID可以通过软件方式实现,无需使用硬件RAID控制器。Linux软RAID可以支持多种RAID级别,包括RAID 0,RAID 1,RAID 4,RAID 5和RAID 6。其中,RAID 0提供了更高的读写性能,但是没有容错能力;而RAID 1则提供了完全的镜像容错机制,可以保护数据的安全性。
对于Linux软RAID的配置和管理,可以使用mdadm命令工具,该工具提供了一系列命令,可以对软RAID进行创建、删除、添加磁盘、涉及磁盘等操作,非常方便易用。
Union File System / Disk Arrays
磁盘阵列是一种将多个磁盘合并成一个文件系统来使用的技术,通过数据的分割写入并发读取等技术,磁盘阵列能获得比单块磁盘更快的读写速度。 通过增设冗余,磁盘阵列可以容忍一定的磁盘损坏。
代表性的技术有:
- RAID: 通过硬件/软件
- RAID0:多盘并行读写加速,没有任何冗余。坏掉任何一块盘都会导致阵列数据无法恢复。
- RAID1:为每个磁盘设置一个镜像盘,数据读写同时在这两个盘上进行。
- RAID10:并行读写+磁盘镜像,需要至少 4 块磁盘。性能高数据安全性高,但是有一半的空间都被用做了冗余。
- RAID5: 各盘互相保存冗余信息,算法复杂性能相对低,但是空间利用率高。总共只设了一块盘大小的冗余,因此最多只能坏一块盘。
- 相同容量的磁盘往往寿命长度也差不多,因此用新盘组 RAID 容易导致同时坏多个盘,数据无法恢复!!!尤其是 RAID5,风险很高。
- RAID5 坏一块盘后,修复速度很慢!
- RAID 10 可以直接热插拔一块硬盘,重新插入硬盘时,会自动恢复数据。就是说坏一块盘的情况下可以直接更换新盘,不影响系统。
- mergefs:mergefs 将多个已挂载的文件系统合并(虚拟)成一个新的挂载点。
- 它不直接管理磁盘设备,各个硬盘仍然是相互独立的。因此坏掉一个硬盘,只会丢失那一部分数据,不会导致所有数据彻底丢失。