I/O
通过iostat
、pidstat
命令或Vastbase健康检查工具查看Vastbase内节点I/O繁忙度和吞吐量,分析是否存在由于I/O导致的性能瓶颈。
查看 I/O 状况
查询服务器I/O的方法主要有以下两种方式:
iostat
和pidstat
属于sysstat软件包。可以使用如下命令直接安装:yum install sysstat -y
使用iostat命令查看I/O情况。此命令主要关注单个硬盘的I/O使用率和每秒读取、写入的数量。
iostat -xm 1 #1为间隔时间
返回结果为:
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util sdc 0.01 519.62 2.35 44.10 0.31 2.17 109.66 0.68 14.62 2.80 15.25 0.31 1.42 sdb 0.01 515.95 5.84 44.78 0.89 2.16 123.51 0.72 14.19 1.55 15.84 0.31 1.55 sdd 0.02 519.93 2.36 43.91 0.32 2.17 110.16 0.65 14.12 2.58 14.74 0.30 1.38 sde 0.02 520.26 2.34 45.17 0.31 2.18 107.46 0.80 16.86 2.92 17.58 0.34 1.63 sda 12.07 15.72 3.97 5.01 0.07 0.08 34.11 0.28 30.64 10.11 46.92 0.98 0.88
“rMB/s”为每秒读取的MB数,“wMB/s”为每秒写入的MB数,“%util”为硬盘使用率。
使用pidstat命令查看I/O情况。此命令主要关注单个进程每秒读取、写入的数量。
pidstat -d 1 10 #1表示查看时间间隔1秒,10表示查看次数10次
返回结果为:
03:17:12 PM UID PID kB_rd/s kB_wr/s kB_ccwr/s Command 03:17:13 PM 1006 36134 0.00 59436.00 0.00 gaussdb
“kB_rd/s”为每秒读取的kB数,“kB_wr/s”为每秒写入的kB数。
性能参数分析
操作步骤
1、检查磁盘空间使用率,建议不要超过60%。
df -T
2、若I/O持续过高,建议尝试以下方式降低I/O。
降低并发数。
对查询相关表做
VACUUM FULL
。vacuum full tablename;