elasticsearch/docs/reference/query-languages/esql/_snippets/functions/appendix
Nik Everett 1b151eda4b
ESQL: Compute engine support for tagged queries (#128521)
Begins adding support for running "tagged queries" to the compute
engine. Here, it's just the `LuceneSourceOperator` because that's
useful and contained.

Example time! Say you are running:
```
FROM foo
| STATS MAX(v) BY ROUND_TO(g, 0, 100, 1000, 100000)
```

It's *often* faster to run this as four queries:
* The docs that round to `0`
* The docs that round to `100`
* The docs that round to `1000`
* The docs that round to `100000`

This creates an ESQL operator that can run these queries, one after the
other and attach those tags.

Aggs uses this trick and it's *way* faster when it can push down count
queries, but it's still faster when it pushes doc loading things. This
implementation in `LuceneSourceOperator` is quite similar to the doc
loading version in _search.

I don't have performance measurements yet because I haven't plugged this
into the language. In _search we call this `filter-by-filter` and enable
it when each group averages to more than 5000 documents and when there
isn't an `_doc_count` field. It's faster in those cases not to push. I
expect we'll be pretty similar.
2025-05-29 12:41:58 -04:00
..
count_distinct.md [docs] Prepare for docs-assembler (#125118) 2025-03-20 12:09:12 -05:00
median.md
median_absolute_deviation.md
percentile.md [docs] Prepare for docs-assembler (#125118) 2025-03-20 12:09:12 -05:00
values.md ESQL: Compute engine support for tagged queries (#128521) 2025-05-29 12:41:58 -04:00