Do I need to wrap a MissingField Filter inside a bool filter?


(José de Zárate) #1

Reading

it looks like the bool filter is the way to go when using a certain
combination of filters.

But what if it's only one filter, which is cached, and presumably a
bitset filter?

I'm talking about the "MissingField" filter.

should this

{
"bool": {
"must": {
{ "missing": {"field": "out_of_stock", "existence": True}}
}
}
}

performs better than

{
"missing": {
"field": "out_of_stock",
"existence": True
}
}

I just got a bit confused with the blog post. I think they both should
perform the same.

uh, oh.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAKNaH0UwiXt%2BKD%2BBc3jNJWBCiYx83851qj%3DwtHM9geQKs6XzNg%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.


(Binh Ly) #2

The missing filter should be cached by default if that's what you wanted to
know:

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-missing-filter.html

So no need to bool it if that's what you're worried about.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/43f2943f-4df6-4ca0-a9a4-eab283ab0c9c%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(José de Zárate) #3

just for the purpose of clarification.

the "bitset" feature is equivalent to the "cacheable" feature. the AND/OR
filters can't cache its results since they always have to compare to other
docs , but if a filter can be "translated" into a bitset, then it can be
"saved" for future references, and that doc hasn't to be examined again in
order to see if complies with the filter, but a single look at its bitset
records should be enough.

??

On Tuesday, February 18, 2014 2:24:29 PM UTC-5, Binh Ly wrote:

The missing filter should be cached by default if that's what you wanted
to know:

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-missing-filter.html

So no need to bool it if that's what you're worried about.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/4d43eaed-5534-4842-a3f1-73a7d648bc1d%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(Adrien Grand) #4

Indeed there is no need to wrap a missing filter inside of a bool filter
and execution performance would be exactly the same.

What you just said about filters is correct.

On Wed, Feb 19, 2014 at 10:47 PM, JoeZ99 jzarate@gmail.com wrote:

just for the purpose of clarification.

the "bitset" feature is equivalent to the "cacheable" feature. the AND/OR
filters can't cache its results since they always have to compare to other
docs , but if a filter can be "translated" into a bitset, then it can be
"saved" for future references, and that doc hasn't to be examined again in
order to see if complies with the filter, but a single look at its bitset
records should be enough.

??

On Tuesday, February 18, 2014 2:24:29 PM UTC-5, Binh Ly wrote:

The missing filter should be cached by default if that's what you wanted
to know:

http://www.elasticsearch.org/guide/en/elasticsearch/
reference/current/query-dsl-missing-filter.html

So no need to bool it if that's what you're worried about.

--
You received this message because you are subscribed to the Google Groups
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/4d43eaed-5534-4842-a3f1-73a7d648bc1d%40googlegroups.com
.

For more options, visit https://groups.google.com/groups/opt_out.

--
Adrien Grand

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAL6Z4j6M8joqsVLFq-Oc5W%3DhXwvMQjVo37CGeFEpaC-KCLuuVA%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.


(system) #5