三个TiKV节点的io使用率经常在90%以上

【 TiDB 使用环境】生产环境
【 TiDB 版本】v4.0.12
【遇到的问题】三个tikv的io util都很高



CPU使用情况:

数据量:

硬件配置是咋样的?

hdd 还是ssd

用的华为云的云服务器 通用性SSD,联系过华为云的人员,说看起来正常,想知道会不会是因为tidb的配置引起的
image

云盘性能差,tidb内读写量比较大,每个操作、锁都得写raft日志,compaction还有大量读写。
IOPS 分为读写两部分,云盘标称的高 IOPS 大都是利用缓存获得提升的读 IOPS;磁盘的性能还包括带宽和 fdatasync,TiKV 在数据写入时需要进行磁盘的 sync 操作,以确保数据已经从缓冲区刷到硬件,再返回给业务侧,具体为 fdatasync 的操作系统调用。
TiKV 磁盘的建议 2GB/s 以上的写带宽,20K 次/s 以上的 fdatasync,在 4KB 高并发 direct 写的测试中 P99.99 低于 3ms;可以使用 fio 新版、或者 pg_test_fsync 工具进行测试。可以加上 -fdatasync=1 选项测一下,例如 大并发每次写4k而且每次 fsync
fio -direct=0 -fdatasync=1 -iodepth=4 -thread=4 -rw=write -ioengine=libaio -bs=4k -filename=./fio_test -size=20G -runtime=60 -group_reporting -name=write_test
fdatasync的性能参考
参考值一:非 NVMe 的 SSD 的 fdatasync/s 约 5~8K/s
参考值二:中早期 NVMe 的 fdatasync/s 约 20~50K/s
参考值三:当前成熟的 PCIE 3 的 NVMe 约 200~500K/s

3 个赞

目前看只是磁盘比较繁忙 ,还没有出现磁盘的瓶颈,普通的SSD对于TiDB来说不是很友好

巧了 我们用过华为云机器 ssd 他们的本地ssd io 确实跟阿里差的不是一点半点。。。。

确实是这样

可以用磁盘性能测试工具,测试一下与其他SSD的差异,然后看看差异是否与现在情况符合