elasticsearch 索引bulk耗时突然变长,3台机器只有一台有bulk.active
Elasticsearch | 作者 zhangdadadapao | 发布于2019年10月05日 | 阅读数:2753
数据是通过hive向es中写入的(org.elasticsearch.hadoop.hive.EsStorageHandler),写入数据1300w、5.5g,原本耗时约40分钟,两天前开始写入耗时增加,数据规模相似的写入耗时需5小时以上,查看集群中的thread_pool,发现只有一台机器在执行写入,且bulk.queue中有很多线程在等待,如下图
另有一个b集群,规模与a类似(上述有问题的集群),执行相同的数据写入耗时约20分钟,下图是b集群写入时的thread_pool,
求助a集群是否是因为我理解的那样只有一台机器在执行写入导致a集群写入耗时更长,是否可以修改令a集群和b集群一样同时有三个集群写入,如果不是是否可能有其他原因导致。
另有一个b集群,规模与a类似(上述有问题的集群),执行相同的数据写入耗时约20分钟,下图是b集群写入时的thread_pool,
求助a集群是否是因为我理解的那样只有一台机器在执行写入导致a集群写入耗时更长,是否可以修改令a集群和b集群一样同时有三个集群写入,如果不是是否可能有其他原因导致。
3 个回复
zhangdadadapao
赞同来自:
zhangdadadapao
赞同来自:
zhangdadadapao
赞同来自:
还有一点就是重启后的索引大小比重启前大一些,如下图
第一个和第三个数据都是今天构建的,不过第一个是重启后构建成功的,占用大小比重启前构建的第三个要大一些,猜测是可能段合并少了?目前看来导致问题的主要因素是频繁的的段合并。