Boosting components

Hi all,

I am using Elasticsearch with grails plugin.
I tried to find out how boosting can be applied on components by
elasticsearch, but did not manage to find an answer anywhere...

My question is :
I want to boost a component*. Should i apply the boost factor on the
component itself (declared inside the root type), or should i boost
the fields of the component, or both ?
If both, do the boost factors multiply ?

Thanks in advance,

Stephane.

  • What i call component is a type inside a root type.

I am not really sure what you mean by component, what do you mean by type inside root type? You mean another field in the doc? You can use some of the Query DSL options to boost data, it feels like the custom_filters_score would fit here: http://www.elasticsearch.org/guide/reference/query-dsl/custom-filters-score-query.html.

On Thursday, March 1, 2012 at 4:24 PM, Stéphane Tessier wrote:

Hi all,

I am using Elasticsearch with grails plugin.
I tried to find out how boosting can be applied on components by
elasticsearch, but did not manage to find an answer anywhere...

My question is :
I want to boost a component*. Should i apply the boost factor on the
component itself (declared inside the root type), or should i boost
the fields of the component, or both ?
If both, do the boost factors multiply ?

Thanks in advance,

Stephane.

  • What i call component is a type inside a root type.

If i boost a field of a boosted object which is inside a root object, are
boost factors multiplied ?

I am more concerned about boost factors for indexing rather than searching.

When you associate a boost value with a specific field for indexing, then that value will be used, its not multiplied. I do recommend using boosting when searching over indexing, as it gives you better flexibility to change it.

On Monday, March 5, 2012 at 1:45 PM, Stéphane Tessier wrote:

If i boost a field of a boosted object which is inside a root object, are boost factors multiplied ?

I am more concerned about boost factors for indexing rather than searching.

I get it: the value applied on the component is for all its fields, and we
can override the boosting of some particular fields if needed.

Thanks for your recommandations, but we have so many different types with
so many different fields that the search request with a boost factor on
each field would be too complicated :confused: