首页 > 编程知识 正文

IOPS测试,随机读取iops

时间:2023-05-04 20:15:16 阅读:229440 作者:2089

我们先来看看随机读应用的特点。在队列深度为1时,相当于单线程访问,此时的IOPS基本相当于单块硬盘每秒钟的寻道+等待次数(即平均访问时间的倒数)。当队列深度不断增加,每块硬盘的NCQ(本地命令排队)功能和硬盘的数量开始发挥作用。队列深度达到256时,理想状态下的IOPS数值与硬盘的数量成正比,无论RAID级别为0、1、5还是6,即单块硬盘IOPS的N倍(N=硬盘块数)。     那么实际情况如何呢?我们看到下方的3条SATA硬盘测试曲线除了最右端的一点基本重合,这样就印证了我们上面的说法。RAID 1的测试成绩在队列深度64时达到最大值,RAID 0/5/6也在128之后不再明显上升。SAS RAID 1在队列深度4之前的IOPS小幅超过了RAID 0和5,我们觉得也许是由于简单RAID级别在资源的消耗上更少吧。   SATA RAID的IOPS最低值在65左右,而SAS则超过了180,这就是7200rpm和15000rpm硬盘机械部分之间的差距。SAS RAID 0/5的最大IOPS达到了1200,RAID 1也超过900,而SATA只有不到600,可以说是SAS硬盘价格贵最好的解释。   下面是随机写,不同RAID级别在该项目上表现不同。虽然此时我们关闭了RAID卡的write cache,不过操作系统的磁盘写入缓存仍然起作用。对于RAID 0和1,不同队列深度的性能差别不大就是由于数据是经过缓存而后写入硬盘的。而RAID 5/6由于复杂的写入算法,数据就没有前面的读测试那么乐观了。RAID 0的IOPS仍然和硬盘的数量成正比;RAID 1由于是2块硬盘写入同样的数据,表现基本相当于单盘;RAID 5/6的随机写速度理论上也会随着队列深度的增加而提高。     排在最上面的1条曲线是SAS RAID 0,IOPS达到1000以上;其次是SATA RAID 0,也有600上下,二者之间差距的原因还是单盘性能,和前面的随机读测试一样。SAS RAID 5的IOPS起初为100左右,在队列深度达到16之前一直不如RAID 1,最高时也没有超过400。这就是一些数据库用户选择RAID 1(10)而不是RAID 5的原因。SATA RAID 5的成绩大约为SAS的三分之一左右;而最下面的RAID 6测试曲线和我们预期的差距较大,始终没有超过40 IOPS。这是本次测试中我们发现的第一个不太正常的情况,或许Adaptec需要改进一下。   回首页目录: 永不消逝的缓存数据:Adaptec 5445Z RAID卡评测  

转载于:https://blog.51cto.com/quadro/404888

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。