Something I've wondered about for a while for those of us using ES as a
"searchable DB" are there things we should turn off?
For example for any search query I never "boost" anything, always include a
sort clause, and never use score results.
I'm happy with the current results, but always trying to become more
efficient I'm curious if there are things that I should disable related to
scoring/boosting (or other non "DB" things) in my mappings/settings?
What about omit_norms, should I turn that on since it seems score related?
By default, if you are sorting, then scoring is not computed (unless
you enable track_scores). Running your query as a filter with a
match_all query should accomplish the same goal with the additional
benefit of being cacheable. Constant score query seems analogous, but
I have never used it.
Since you never use boost, you should omit norms on your fields. Norms
are recorded into the index, so not only do they increase your index
size, but will also use up memory once they are loaded.
Something I've wondered about for a while for those of us using ES as a
"searchable DB" are there things we should turn off?
For example for any search query I never "boost" anything, always include a
sort clause, and never use score results.
I'm happy with the current results, but always trying to become more
efficient I'm curious if there are things that I should disable related to
scoring/boosting (or other non "DB" things) in my mappings/settings?
What about omit_norms, should I turn that on since it seems score related?
On Wed, 2012-09-19 at 09:49 -0700, Ivan Brusic wrote:
By default, if you are sorting, then scoring is not computed (unless
you enable track_scores). Running your query as a filter with a
match_all query should accomplish the same goal with the additional
benefit of being cacheable. Constant score query seems analogous, but
I have never used it.
Since you never use boost, you should omit norms on your fields. Norms
are recorded into the index, so not only do they increase your index
size, but will also use up memory once they are loaded.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.