磁盘I/O性能指标以及优化思路【转载】
发布日期:2021-06-30 20:51:42 浏览次数:2 分类:技术文章

本文共 1518 字,大约阅读时间需要 5 分钟。

在介绍磁盘i/o监控命令之前,我们需要了解磁盘/i/o性能监控的指标,以及每个指标的所揭示的磁盘某方面的性能。

磁盘i/o性能监控的指标主要包括:
指标1:每秒i/o数(IOPs或者tps)
对于磁盘来说,一次磁盘的连续读或者连续写称为一次磁盘i/o;磁盘的iops就是每秒磁盘连续读次数和连续写次数之和。当传输小块不连续数据时,该指标有重要参考意义。
指标2:吞吐量(throughput)
指标硬盘传输数据流的速度,传输数据为读出数据和写入数据之和。其单位一般为kbps,MB/s等。当传输大块不连续数据的数据,该指标有重要参考作用。
指标3:平均I/O数据尺寸 平均i/o
数据尺寸吞吐量除以i/o数目,该指标对于揭示磁盘使用模式用重要意义。一般来说,如果平均i/o数据尺寸小于32k,可以认为磁盘使用模式以随机存取为主;如果平均每次i/o数据尺寸大于32k,可认为磁盘使用模式以顺序存取为主。
指标4:磁盘活动时间百分比(utilization)
磁盘处于活动时间的百分比,即是磁盘利用率,磁盘在数据局传输和处理命令(如寻道)处于活动状态。磁盘利用率与资源争用程度成正比,与性能成反比。也就是说磁盘利用率越高,资源争用就越严重,性能越差,响应时间越长。一般来说,如果磁盘利用率超过70%,应用进程将花费教长的时间等待i/o完成,因为绝大多数进行在等待过程中将被阻塞或者休眠。
指标5:服务时间(service time)
指磁盘读取与写操作执行的时间,包括寻道;旋转时延,和传输数据等待时间。其大小一般与磁盘性能有关,CPU和内存的负荷也会对其有影响,请求过多也会间接导致服务时间的增长。如果该值持续超过20ms,一般可以考虑会对上层应用产生影响。
指标6:I/O等待队列长度(queue length)
指等待处理的i/o请求的数目,如果i/o请求压力持续超出磁盘处理能力,该值将会增加。如果单块磁盘的队列长度持续超过2,一般认为该磁盘存在i/o性能问题。需要注意的是,如果该磁盘为磁盘阵列虚拟的逻辑驱动器,需要将该值除以组成这个逻辑驱动器的实际物理磁盘数目,以获的平均单块磁盘的i/o等待队列长度。
指标7:等待时间(wait time)
指磁盘读或者写等待执行的时间,即在队列中排队的时间。如果i/o请求持续超出磁盘处理能力,意味着来不及处理的i/o请求不得不在队列中等待教长的时间。通过监控以上指标,并将这些指标数值与历史数据,经验数据以及磁盘标准数值对比,必要时结合CPU、内存、交换分区的使用情况,不难发现磁盘i/o潜在或者已经出现问题。但是如何避免和解决这些问题呢?这就需要利用磁盘i/o磁盘性能优化方面的知识和技术。

优化方法:

1.调整数据布局,尽量将i/o请求比较合理的分配到所有物理磁盘中。

2.对于raid磁盘阵列,尽量使应用程序i/o等于条带尺寸或者为条带尺寸的倍数。并选取合适的raid方式,比如raid10,raid5.
3增大磁盘驱动程序的队列深度,但是不要超过磁盘的处理能力,否则,部分i/o请求会因为丢失而重新发出,这将降低性能。
4.应用缓存技术减少应有磁盘的次数,缓存技术可应用在文件系统级别或者应用程序级别。
5由于多数数据库中已经包括经过优化的缓存技术,数据库i/o直接存取原始磁盘分区(raw partition)或者利用绕过文件系统缓存的dio技术(direct IO)
6 利用内存读写带宽远高于比直接磁盘i/o操作性能优越的特点,将频繁访问的文件或数据置于内存中。

转载地址:https://www.cnblogs.com/hehexiaoxia/p/5780390.html

转载地址:https://liushiya.blog.csdn.net/article/details/104570730 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:iptables命令详解和举例【转载】
下一篇:zabbix总结梳理、批量创建监控项、企业使用方式

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年04月10日 11时18分19秒