背景:
最近在做一个功能的时候,会对一个字段进行汇聚,但是发现这个汇聚的耗时超级长,完全不符合预期,因为我们用了term,能符合条件的数据量已经非常小了,但是还依然会非常慢,于是进行了一堆猜测和尝试,最主要的猜想就是汇聚字段跟上面的query结果没形成一个先后顺序,最后也验证了,的确如此;
解决方案:
参考 https://blog.csdn.net/laoyang360/article/details/79253294 文章中,有个解释感觉跟我们的场景非常契合:
于是我们在操作中加上了 "execution_hint": "map" 验证了一下,直接由 12s变成了21ms 完美解决