quickwit-oss/quickwit

optimize range request by transforming them to filters

Opened this issue · 0 comments

when we have a query such as (+term_query +range_query), it may be more efficient to change that to some Filter(term_query, range_query), where Filter() would be a query which run the subquery it has as a first parameter, and asks the 2nd parameter whether that value should be emitted. This is especially true if the query is cheap, and filters a lot
This is based on observations that range_query over the timestamp field is more efficiently handled through filtering via collector, than through a boolean query inside the query AST.