调查ElasticSearch中的慢查询

时间:2017-11-30 15:40:53

标签: performance elasticsearch

我们在生产环境中使用弹性搜索版本5.4.1。集群设置为3个数据,3个查询,3个主节点。最近我们在特定数据节点中观察了很多慢查询,并且其中的[index] [shard]只是副本。

我发现很多已删除的文档或内存问题可能会导致速度缓慢。

有关如何进行调查的任何指示都会有所帮助。

谢谢!

1 个答案:

答案 0 :(得分:0)

在一次ES查询期间发生了很多事情。首先,检查ElasticSearch返回的took字段。

  

took - Elasticsearch执行搜索的时间(以毫秒为单位)

但是,took字段是它的时间 让ES来处理查询。它不包括

  • 将请求序列化为客户端上的JSON
  • 通过网络发送请求
  • 在服务器上反序列化来自JSON的请求
  • 将响应序列化为服务器上的JSON
  • 通过网络发送回复
  • 在客户端上反序列化来自JSON的响应

因此,我认为您应该尝试确定缓慢的确切步骤。

参考:Query timing: ‘took’ value and what I’m measuring