在多重排序的情况下,弹性搜索的响应速度会变慢吗?[不是脚本排序]



我的用例是根据 2 个字段对 ES 响应进行排序,第一个字段后跟另一个字段 [如果第一个值相同]。

这与脚本排序不同,我在查询中使用两个字段的值。

想在这里询问 ES 专家,了解 ES 查询的性能影响是什么? PS ,我已经在做双重排序,我希望转换为三重字段排序。

双重排序

{
"sort" : [
{ "post_date" : {"order" : "asc"}},
"user",
{ "name" : "desc" }
],
"query" : {
"term" : { "user" : "kimchy" }
}
}

三重排序

{
"sort" : [
{ "post_date" : {"order" : "asc"}},
"user",
{ "name" : "desc" },
{ "age" : "desc" }
],
"query" : {
"term" : { "user" : "kimchy" }
}
}

我正在按应用程序中的多个字段进行排序,没有注意到任何负面影响。我在文档中也没有找到任何不按超过 N 个字段排序的建议。

我发现的一件事是Elasticsearch 6.0中引入的索引排序功能,但它只是为了以防万一。您现在可能可以在没有这个的情况下处理。

最新更新