Fio 测试概览
Fio 测试概览
Fio(Flexible I/O Tester)是一款功能强大的开源工具,用于对存储系统的性能进行基准测试。 它支持各种 I/O 操作,包括顺序和随机读/写,同时支持高度自定义的工作负载。 Fio 可跨平台,在 Linux、Windows 和 macOS 系统上运行,并提供诸如IOPS、带宽和延迟等详细的性能指标。
本页文档展示Alluxio 的 fio 测试结果。测试案例可应用于其他存储系统。
测试结果摘要
单个Worker 和Client 吞吐量(256k大小的数据块)
顺序读
2182 MB/s
8580 MB/s
随机读
148 MB/s
7869 MB/s
单个Worker 和Client IOPS(4k大小的数据块)
顺序读
55.9k
244k
179k
随机读
1.6k
70.1k
162k
缓存数据的性能
测试详情
测试环境
所有实例均位于 AWS 的同一可用区域。
Alluxio Worker
1个i3en.metal实例
由8个nvme固态硬盘组成的 Raid 0(通过 mdadm 命令创建)
100Gbps 网络带宽
Ubuntu 24.04
一个 Alluxio worker进程
一个 ETCD 节点
Alluxio Client
1 个c5n.metal 实例
100Gbps 网络带宽
Ubuntu 24.04
Fuse 3.16.2
一个 Alluxio FUSE 进程
单个worker 和Client测试
此场景测试的是单个 100GB 大文件的读取性能。 测试中仅涉及 1 个client和 1 个worker。
安装 fio
Fio 可以通过 yum 安装:sudo yum install fio
。 可以在其 github 上找到其他下载位置。
测试准备
将一个100GB文件放入UFS。 在此基准测试中,我们使用与 Worker 和client位于同一区域的 S3 桶。
顺序读
在 Alluxio client 上运行以下命令:
numjobs
参数指定执行读取并发数。在此基准测试中,numjobs
设置为1
、32
或128
。 bs
参数指定测试中使用的数据块大小。我们使用 256k
测试吞吐量,使用 4k
测试 IOPS。
随机读
与热顺序读相同,但参数 rw
改为 randread
。
附录 - Alluxio 配置
集群配置("alluxio-site.properties)
JVM 选项(alluxio-env.sh
)
alluxio-env.sh
)Fuse 挂载选项
Last updated