绊脚石乃是进身之阶。

磁盘读写速度和IO使用率对ES的稳定性是否有影响?

Elasticsearch | 作者 Sunboyxxy | 发布于2018年02月11日 | 阅读数:6158

测试环境:
4核8G的云主机 和 50G的 SSD磁盘  data 共4台  1台 master  2台 client
 
通过dd 命令测试看到磁盘写的速度是:
10737418240 bytes (11 GB) copied, 75.1882 s, 143 MB/s
 
然后通过jmeter调用ES的写入接口,并发线程数分别为 100、300、500、1000 每次写入的数据大小为 600b 0.6kb左右
 
在其中一台data服务器上通过 iotstat 命令看到磁盘的状态如下:可以看到 I/O使用率是接近100%,每秒写是 4009KB/S 
 
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
vda               0.00     2.30    0.00    3.60     0.00    22.80    12.67     0.02    5.08    0.00    5.08   1.11   0.40
vdb               0.00   588.10    0.00  569.70     0.00  4009.60    14.08     3.16    5.56    0.00    5.56   1.69  96.02
dm-6              0.00     0.00    0.00 1103.00     0.00  4011.20     7.27    13.52   12.25    0.00   12.25   0.87  96.09

 
 
为什么这个写入速度远没有达到磁盘的写速度,但是使用率却接近100%  
而且,在I/O满负荷的情况下,,100、300、500、1000 并发并 TPS 没有多大的差异 

11.PNG

 
那这个磁盘的负荷对ES的性能到底有多大的影响呢?还请各位大神帮忙指点。。
 
已邀请:

locatelli

赞同来自:

对于SSD来说,iostat的svctm和util指标基本失效,因为SSD不同于序列读写的磁盘,它可以并行读写。
‘man iostat'有相关的提示

要回复问题请先登录注册