Elasticsearch explain

Elasticsearch explain

Elasticsearch 的 explain 用于检查查询中的错误,一般用在那种特别复杂庞大的搜索下,比如一下子写了上百行的搜索,这个时候可以先用 validate api 去验证一下,搜索是否合法。

Elasticsearch explain详解

语法

GET /indexname/_validate/query?explain { "query": { "match": { "test_field": "test" } } }

说明

我们使用了 explain 验证,查询是否合法。

案例

explain验证查询

我们在 Kibana 的控制台上,输入以下代码,新建一个文档

PUT /haicodernet/_doc/1 { "index":"www.haicoder.net", "name" : "javascript", "desc" : "javascript module", "categorys" : 5, "author" : "jobs steven", "tags": [ "javascript", "vue" ] }

输入完成后,我们点击运行按钮,输出了最终的运行结果,如下图所示:

30_Elasticsearch explain.png

我们看到,此时我们创建文档成功了,现在,我们使用 explain 校验查询的合法性,代码如下:

GET /haicodernet/_validate/query?explain { "query": { "match": { "name" : "javascript" } } }

输入完成后,我们点击运行按钮,输出了最终的运行结果,如下图所示:

31_Elasticsearch explain.png

我们看到,输出了查询的合法。

Elasticsearch explain总结

Elasticsearch 的 explain 用于检查查询中的错误,一般用在那种特别复杂庞大的搜索下,比如一下子写了上百行的搜索,这个时候可以先用 validate api 去验证一下,搜索是否合法。