我创建了一个 ZFS RAIDZ2 / Raid 6 文件系统,我相信它将在 2 个磁盘上存储奇偶校验。
root@zfs-demo:/data# zpool status
pool: data
state: ONLINE
config:
NAME STATE READ WRITE CKSUM
data ONLINE 0 0 0
raidz2-0 ONLINE 0 0 0
sdb ONLINE 0 0 0
sdc ONLINE 0 0 0
sdd ONLINE 0 0 0
sde ONLINE 0 0 0
errors: No known data errors
Run Code Online (Sandbox Code Playgroud)
我有一个 1GB 的文件
root@zfs-demo:/data# ls -alh
total 1023M
drwxr-xr-x 2 root root 3 Dec 17 18:22 .
drwxr-xr-x 19 root root 4.0K Dec 17 18:10 ..
-rw-r--r-- 1 root root 1.0G Dec 17 18:22 1GB.bin
Run Code Online (Sandbox Code Playgroud)
我认为两个奇偶校验磁盘意味着我正在存储文件本身 + 两批奇偶校验 = 1 GB 文件总共 3 GB 的存储空间,但只分配了 2GB。
root@zfs-demo:/data# zpool list
NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
data 39.5G 2.01G 37.5G - - 0% 5% 1.00x ONLINE -
Run Code Online (Sandbox Code Playgroud)
使用四分之二的磁盘进行冗余,您可以简单地将用户数据加倍:两个磁盘存储原始数据,而另外两个磁盘上的相同空间用于冗余数据。奇偶校验实际上使用条带化分布在所有磁盘上,但这不会改变占用的空间。
对于磁盘数量,您可以使用 RAID 1/镜像,具有相同的空间效率,但吞吐量效率更高(并且弹性较低,正如 Romeo Ninov 所评论的那样)。磁盘数量越多,RAID-Z2 或 RAID 6 的效率就越高:总共有 10 个磁盘,其中 8 个可以有效用于数据,但仍然只有 2 个用于冗余。
| 归档时间: |
|
| 查看次数: |
1052 次 |
| 最近记录: |