简要介绍不同协议存储下的常用性能测试工具,此类工具网络上均有大量使用说明,因此本文仅针对各类工具适用场景和特点做描述,供参考
1、块存储(如普通云硬盘、iSCSI云盘等):
FIO:
支持下发不同块大小IO读写操作,适合进行块存储小块IO的IOPS、大块IO带宽、时延等指标测试,
支持顺序读/写,随机读/写等多种IO模型;
支持多线程,支持多台服务器联机操作;
可在windows/linux等环境下运行
可通过配置文件或直接命令参数执行,操作较为简单。
Vdbench:
支持下发不同块大小IO读写操作,适合进行块存储小块IO的IOPS、大块IO带宽、时延等指标测试,
支持顺序读/写,随机读/写等多种IO模型;
支持多线程,支持多台服务器联机操作;
可在windows/linux等环境下运行
支持下发带有重删、压缩属性的数据文件,可用于存储服务端重删压缩测试
通过写脚本配置文件进行执行,可从互联网获取相关模板。
2、对象存储:
Cosbench:
支持下发不同大小的对象,支持配置性能测试中的桶个数
支持上传、下载、混合上传&下载等多种模型测试
支持多线程、支持多台服务器联机操作
linux环境下运行更为常见
通过写脚本配置文件进行执行,可从互联网获取相关模板;同时安装完成后可通过浏览器访问console页面,在页面进行任务下发
3、文件存储:
FIO:
支持下发不同块大小的IO操作,较为适合进行文件系统的大文件小IO场景的性能测试,观测IOPS、带宽、时延等指标
支持顺序读/写,随机读/写等多种IO模型;
支持多线程,支持多台服务器联机操作;
可在windows/linux等环境下运行,对应进行CIFS、NFS协议性能测试
可通过配置文件或直接命令参数执行,操作较为简单。
Vdbench:
支持下发不同块大小IO读写操作,适合进行文件系统的大文件小IO场景的性能测试,观测IOPS、带宽、时延等指标
支持下发不同文件大小的读写操作,适合进行文件系统的小文件OPS、大文件带宽场景的性能测试,观测OPS、带宽、时延等指标
支持顺序读/写,随机读/写等多种IO模型;
支持多线程,支持多台服务器联机操作;
可在windows/linux等环境下运行
通过写脚本配置文件进行执行,可从互联网获取相关模板。
IOzone:
支持下发不同文件大小的读写操作,适合进行文件系统的大文件带宽场景的性能测试,观测OPS、带宽、时延等指标
支持顺序读/写,随机读/写等多种IO模型;
支持多线程,支持多台服务器联机操作;
可在windows/linux等环境下运行
支持下发不同文件大小的读写操作,适合进行文件系统的小文件OPS、大文件带宽场景的性能测试,观测OPS、带宽、时延等指标
支持顺序读/写,随机读/写等多种IO模型;
支持多线程,支持多台服务器联机操作;
可在windows/linux等环境下运行
通过写脚本配置文件进行执行,可从互联网获取相关模板。
4、大数据HDFS:
DFSIO:
Hadoop自带IO工具,可用于进行不同大小文件的上传、下载性能测试,观测带宽、时延等指标
计算节点统一运行,依赖Hadoop调度框架
命令行操作,较为简单
TPC-DS:
业界通用的基准测试,提供99个SQL用例,可用于Hive、Spark等组件的相关任务效率测试