相信大家对RAID 0 和 RAID 5 都有一定的认识,测试数据也看到不少了,近日整理旧服务器的时候发现刚好凑出两台同一批次的旧HP DL 380 G5服务器,一台是3块硬硬盘 RAID 5,另一台抽走一块硬盘刚好是2块硬盘做RAID 0,RAID卡缓存都是512MB。
CPU一样,内存一样也是8GB,硬盘也是一样 72GB 2.5寸 10000 RPM SAS盘。
两台机器的磁盘刚好是RAID 0 和 RAID 5 的最少组成方式,非常巧合,于是做了一下I/O测试。
测试工具使用 bonnie++ 1.03e 。
测试脚本是:
sync; time ./bonnie++ -d /tmp/test -r 256 -s 8192 -n 4096 -u root
以下是测试的输出,首先是RAID 0的机器:
[root@test01 bonnie++-1.03e]# sync; time ./bonnie++ -d /tmp/test -r 256 -s 8192 -n 4096 -u root Using uid:0, gid:0. Writing with putc()...done Writing intelligently...done Rewriting...done Reading with getc()...done Reading intelligently...done start 'em...done...done...done... Create files in sequential order...done. Stat files in sequential order...done. Delete files in sequential order...done. Create files in random order...done. Stat files in random order...done. Delete files in random order...done. Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP test01 8G 84797 99 215967 42 50581 8 49144 71 158925 11 8104 5 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 4096 12687 51 383162 99 1564 5 13175 53 447532 99 905 3 test01,8G,84797,99,215967,42,50581,8,49144,71,158925,11,8104.3,5,4096,12687,51,383162,99,1564,5,13175,53,447532,99,905,3 real 142m5.843s user 3m26.405s sys 12m29.689s
然后是 RAID 5 的机器:
[root@test03 bonnie++-1.03e]# sync; time ./bonnie++ -d /tmp/test -r 256 -s 8192 -n 4096 -u root Using uid:0, gid:0. Writing with putc()...done Writing intelligently...done Rewriting...done Reading with getc()...done Reading intelligently...done start 'em...done...done...done... Create files in sequential order...done. Stat files in sequential order...done. Delete files in sequential order...done. Create files in random order...done. Stat files in random order...done. Delete files in random order...done. Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP test03 8G 77683 95 89103 19 15012 2 45894 65 168197 9 2478 2 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 4096 16069 46 460732 99 684 1 16386 46 565151 99 424 1 test03,8G,77683,95,89103,19,15012,2,45894,65,168197,9,2478.3,2,4096,16069,46,460732,99,684,1,16386,46,565151,99,424,1 real 292m39.652s user 3m28.035s sys 8m58.005s
从测试时间来看 RAID 5 机器完成的时间要长很多,以下是数据的整理并绘制成图。
CPU占用率其实都差多,毕竟大部分的工作都是交给 RAID 卡去做的,重点关注的指标还是第一、第三张图。
第一张图中的:Sequential Output Block Transmission Speed 和 Sequential Output Rewrite Transmission Speed 这两项测试 RAID 0 拉开 RAID 5 一大截,可能是得益于 RAID 0 无需做校验的优势,不过这个优势也太大了吧。