ZFS存储池速度以及RAID说明

2024-02-22 02:44
文章标签 说明 存储 速度 raid zfs

本文主要是介绍ZFS存储池速度以及RAID说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
    • 1. STRIPED VDEV(RAID 0)
        • 性能示例:
    • 2. MIRRORED VDEV (RAID 1)
      • 1x 12-way mirror:
      • 6x 2-way mirror:
      • 4x 3-way mirro:
        • 性能示例:
    • 3. RAIDZ VDEV
      • RAIDZ3:
      • RAIDZ2(RAID6):
      • RAIDZ1 (RAID5):
        • 性能示例:
    • 总结
    • 参考


前言

RAID存储主要考虑以下6个指标:

  • 读取IOPS
  • 写入IOPS
  • 连续读取速度
  • 连续写入速度
  • 存储空间效率(冗余校验后的可用容量与总原始容量之比)
  • 容错能力(在数据丢失之前可以容忍的最大故障驱动器数量)

假设使用12个硬盘,每个硬盘的大小为6TB,100MB/s的连续读写速度,并且可以进行250次读写IOPS,来看不同RAID的**理论性能**。

1. STRIPED VDEV(RAID 0)

在这里插入图片描述

坏一个盘整个存储池就废掉。

在这里插入图片描述

性能示例:
属性N-wide striped12-wide striped
Read IOPSN * 单个驱动器的读取IOPS3000
Write IOPSN * 单个驱动器的写入IOPS3000
Streaming read speedN * 单个驱动器的连续读取速度1200 MB/s
Streaming write speedN * 单个驱动器的连续写入速度1200 MB/s
Storage space efficiency100%72 TB
Fault toleranceNoneNone

2. MIRRORED VDEV (RAID 1)

1x 12-way mirror:

相当于12个硬盘组RAID1

6x 2-way mirror:

相当于 每2个硬盘组RAID1,然后再6个组RAID0。

在这里插入图片描述

每个VDEV可坏一个

在这里插入图片描述

但是一个VDEV坏2个就废掉

在这里插入图片描述

4x 3-way mirro:

相当于 每3个硬盘组RAID1,然后再4个组RAID0。

在这里插入图片描述

每个VDEV可坏2个

在这里插入图片描述

但是一个VDEV坏3个就废掉

在这里插入图片描述

性能示例:
属性N-way mirror1x 12-way mirror6x 2-way mirror4x 3-way mirror
Read IOPSN * 单个驱动器的读取IOPS300030003000
Write IOPS单个驱动器的写入IOPS25015001000
Streaming read speedN * 单个驱动器的连续读取速度1200 MB/s3000 MB/s3000 MB/s
Streaming write speed单个驱动器的连续写入速度100 MB/s1500 MB/s400 MB/s
Storage space efficiency50% for 2-way, 33% for 3-way, 25% for 4-way, etc. [(N-1)/N]8.3% (6 TB)50% (36 TB)33% (24 TB)
Fault tolerance1 disk per vdev for 2-way, 2 for 3-way, 3 for 4-way, etc. [N-1]11每个vdev1个,总计6个每个vdev2个,总计8个

3. RAIDZ VDEV

RAIDZ3:

每个VDEV可坏3个硬盘

在这里插入图片描述

RAIDZ2(RAID6):

每个VDEV可坏2个硬盘

在这里插入图片描述

RAIDZ1 (RAID5):

每个VDEV可坏1个硬盘

在这里插入图片描述

性能示例:
属性N-wide RAIDZ, parity level p1x 12-wide Z32x 6-wide Z24x 3-wide Z1
Read IOPS单个驱动器的读取IOPS2505001000
Write IOPS单个驱动器的写入IOPS2505001000
Streaming read speed(N - p) * 单个驱动器的连续读取速度900 MB/s800 MB/s800 MB/s
Streaming write speed(N - p) * 单个驱动器的写入读取速度900 MB/s800 MB/s800 MB/s
Storage space efficiency(N - p)/N75% (54 TB)66.7% (48 TB)66.7% (48 TB)
Fault tolerance1 disk per vdev for Z1, 2 for Z2, 3 for Z3 [p]3每个vdev2个,总计4个每个vdev1个,总计4个

总结

只有RAID0这种可提升写IOPS!

参考

RAID重建计算 (R2-C2)

OpenZFS 容量计算

OpenZFS the final word in file systems

这篇关于ZFS存储池速度以及RAID说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/733903

相关文章

mybatis-plus QueryWrapper中or,and的使用及说明

《mybatis-plusQueryWrapper中or,and的使用及说明》使用MyBatisPlusQueryWrapper时,因同时添加角色权限固定条件和多字段模糊查询导致数据异常展示,排查发... 目录QueryWrapper中or,and使用列表中还要同时模糊查询多个字段经过排查这就导致只要whe

SpringBoot改造MCP服务器的详细说明(StreamableHTTP 类型)

《SpringBoot改造MCP服务器的详细说明(StreamableHTTP类型)》本文介绍了SpringBoot如何实现MCPStreamableHTTP服务器,并且使用CherryStudio... 目录SpringBoot改造MCP服务器(StreamableHTTP)1 项目说明2 使用说明2.1

JAVA覆盖和重写的区别及说明

《JAVA覆盖和重写的区别及说明》非静态方法的覆盖即重写,具有多态性;静态方法无法被覆盖,但可被重写(仅通过类名调用),二者区别在于绑定时机与引用类型关联性... 目录Java覆盖和重写的区别经常听到两种话认真读完上面两份代码JAVA覆盖和重写的区别经常听到两种话1.覆盖=重写。2.静态方法可andro

SpringBoot3.X 整合 MinIO 存储原生方案

《SpringBoot3.X整合MinIO存储原生方案》本文详细介绍了SpringBoot3.X整合MinIO的原生方案,从环境搭建到核心功能实现,涵盖了文件上传、下载、删除等常用操作,并补充了... 目录SpringBoot3.X整合MinIO存储原生方案:从环境搭建到实战开发一、前言:为什么选择MinI

zookeeper端口说明及介绍

《zookeeper端口说明及介绍》:本文主要介绍zookeeper端口说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、zookeeper有三个端口(可以修改)aVNMqvZ二、3个端口的作用三、部署时注意总China编程结一、zookeeper有三个端口(可以

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

java中新生代和老生代的关系说明

《java中新生代和老生代的关系说明》:本文主要介绍java中新生代和老生代的关系说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、内存区域划分新生代老年代二、对象生命周期与晋升流程三、新生代与老年代的协作机制1. 跨代引用处理2. 动态年龄判定3. 空间分

Java中调用数据库存储过程的示例代码

《Java中调用数据库存储过程的示例代码》本文介绍Java通过JDBC调用数据库存储过程的方法,涵盖参数类型、执行步骤及数据库差异,需注意异常处理与资源管理,以优化性能并实现复杂业务逻辑,感兴趣的朋友... 目录一、存储过程概述二、Java调用存储过程的基本javascript步骤三、Java调用存储过程示

MySQL之InnoDB存储引擎中的索引用法及说明

《MySQL之InnoDB存储引擎中的索引用法及说明》:本文主要介绍MySQL之InnoDB存储引擎中的索引用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1、背景2、准备3、正篇【1】存储用户记录的数据页【2】存储目录项记录的数据页【3】聚簇索引【4】二