Начиная с Elasticsearch 2.x, у меня сложилось впечатление, что Elasticsearch автоматически определяет, в каком порядке он должен выполнять запросы.Например, если вы запустите:
{
"query": {
"bool": {
"filter": [
{ "term": { "some_field": "foo" } },
{ "exists": { "field": "bar" } }
]
}
}
}
Я полагаю, что в этом случае он автоматически определит, должен ли он сначала выполнить фильтр терминов или фильтр существует.
Если вы используете скрипт,как он определяет, в какой момент в порядке выполнения должен выполняться скрипт?
Например:
{
"query": {
"bool": {
"filter": [
{ "term": { "some_field": "foo" } },
{ "script": ... }
]
}
}
}