磁盘读写测试--基于dd工具

学向勤中得,萤窗万卷书。这篇文章主要讲述磁盘读写测试--基于dd工具相关的知识,希望能为你提供帮助。
linux操作系统自带dd命令,可用来做磁盘IO读写性能测试
1、测试工具和用例a、测试用例-写入到磁盘(异步,最后一次性写入磁盘)
  dd  bs=1M  count=128  if=/dev/zero  of=test  conv=fdatasync          加入conv=fdatasync这个参数后,dd命令执行到最后会真正执行一次“同步(sync)”操作,所以这时候得到的是读取这128M数据到内存并写入到磁盘上所需的时间,这样算出来的时间才是比较符合实际的。
b、测试用例-写入到磁盘(同步,边写边同步到磁盘)
        dd  bs=1M  count=128  if=/dev/zero  of=test  oflag=dsync
        加入这个oflag=dsync参数后,dd在执行时每次都会进行同步写入操作。也就是说,这条命令每次读取1M后就要先把这1M写入磁盘,然后再读取下面这1M,一共重复128次。这可能是最慢的一种方式了,因为基本上没有用到写缓存(write  cache)。


2、测试过程      dd if=/dev/dm-6 of=/dev/null bs=1k count=10000 iflag=direct                                                                  ###读取速率,每块1k。常用来测试数据库IO延迟等
dd命令测磁盘的步骤:  touch  /var/1GB.FILE     //建立空文件。
  time  dd  if=/dev/zero    of=/var/1GB.FILE  bs=1024  count=1000000             ###从/dev/zero复制到/var/下,使1GB.FILE空文件变为bs*count大小

3、数据库测试总结a、数据经常把bs块分为1k、2k、4k、8k、12k,1M、2M、4M、8M、12M,以及更大的块来测试得写。一般情况下对于一个1G大小的文件读写比1024个1M大小的文件读写性能要好很多、执行时间也会很快;






【磁盘读写测试--基于dd工具】


    推荐阅读