Update filtered-query.asciidoc
This commit is contained in:
parent
b93512e000
commit
1548e845e4
|
@ -94,61 +94,3 @@ Multiple filters can be applied by wrapping them in a
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
--------------------------------------------------
|
--------------------------------------------------
|
||||||
|
|
||||||
===== Filter strategy
|
|
||||||
|
|
||||||
You can control how the filter and query are executed with the `strategy`
|
|
||||||
parameter:
|
|
||||||
|
|
||||||
[source,js]
|
|
||||||
--------------------------------------------------
|
|
||||||
{
|
|
||||||
"filtered" : {
|
|
||||||
"query" : { ... },
|
|
||||||
"filter" : { ... },
|
|
||||||
"strategy": "leap_frog"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
--------------------------------------------------
|
|
||||||
|
|
||||||
IMPORTANT: This is an _expert-level_ setting. Most users can simply ignore it.
|
|
||||||
|
|
||||||
The `strategy` parameter accepts the following options:
|
|
||||||
|
|
||||||
[horizontal]
|
|
||||||
`leap_frog_query_first`::
|
|
||||||
|
|
||||||
Look for the first document matching the query, and then alternatively
|
|
||||||
advance the query and the filter to find common matches.
|
|
||||||
|
|
||||||
`leap_frog_filter_first`::
|
|
||||||
|
|
||||||
Look for the first document matching the filter, and then alternatively
|
|
||||||
advance the query and the filter to find common matches.
|
|
||||||
|
|
||||||
`leap_frog`::
|
|
||||||
|
|
||||||
Same as `leap_frog_query_first`.
|
|
||||||
|
|
||||||
`query_first`::
|
|
||||||
|
|
||||||
If the filter supports random access, then search for documents using the
|
|
||||||
query, and then consult the filter to check whether there is a match.
|
|
||||||
Otherwise fall back to `leap_frog_query_first`.
|
|
||||||
|
|
||||||
`random_access_${threshold}`::
|
|
||||||
|
|
||||||
If the filter supports random access and if the number of documents in the
|
|
||||||
index divided by the cardinality of the filter is greater than ${threshold},
|
|
||||||
then apply the filter first.
|
|
||||||
Otherwise fall back to `leap_frog_query_first`. `${threshold}` must be
|
|
||||||
greater than or equal to `1`.
|
|
||||||
|
|
||||||
`random_access_always`::
|
|
||||||
|
|
||||||
Apply the filter first if it supports random access. Otherwise fall back
|
|
||||||
to `leap_frog_query_first`.
|
|
||||||
|
|
||||||
The default strategy is to use `query_first` on filters that are not
|
|
||||||
advanceable such as geo filters and script filters, and `random_access_100` on
|
|
||||||
other filters.
|
|
||||||
|
|
Loading…
Reference in New Issue