微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在SAN上对Linux文件系统进行基准测试?

我想对存储在SAN上的文件系统进行基准测试.

但SAN使用了大量缓存(仅10%到20%),
所以,如果我做一些测试,结果将是不现实的.

我该怎么办才能得到正确的结果?

对程序的任何建议?邦妮,IOZone还是……?

解决方法

作为iozone粉丝,我多年来一直在使用它进行 Linux和Windows系统的基准测试. Sean有一个关键点,用一个不能在RAM Cache中修复的数据集进行测试. IOZone让这很容易.
iozone -s 64G -r 16k

使用64G数据集和16K读取大小进行测试.您可以多次指定-r以为其提供一系列I / O操作大小.您甚至可以指定单独的测试:

iozone -s 32G -s 64G -r 8k -r 16k -r 32k -r 64k -i 1 -i 2

-i 1是必需的,因为它创建数据集,但-i 2告诉它也运行随机读取和随机写入测试.它还可以运行其他几项测试.一个有趣的测试是’stride read’测试,它在读取之间跳过许多切片;正确配置它可以测试预读和RAID条带对齐的限制.

它也可以使用Direct IO作为测试的一部分,如果这对您很重要的话.一些DBMS使用DirectIO,绕过Linux缓存系统:

iozone -s 8G -r 1k -I

它甚至有一个同时测试多个文件的模式.这对于测试某些文件可能适合缓存的情况很方便,但不是全部.

iozone -t 32 -s 2G -r 8k -r 16k

这告诉它使用32个线程,每个线程都有自己的2GB文件,并测试各种记录大小.

我见过几次的一件事是我测试的记录大小与我的RAID条带宽度相同.通常,它的访问速度比它两侧的记录大小要慢.这是分区错位的标志.

原文地址:https://www.jb51.cc/linux/397686.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐