Removing boost from an existing index


(masonite) #1

Hello,

First time posting and fairly new ElasticSearch user... We have some fairly large indexes which were unfortunately mapped with many fields having a "boost" factor but also "omit_norms" set to true. In the older versions of Lucene this wasn't too much of an issue but now when attempting a version upgrade we've discovered that Lucene 3.6 is throwing exceptions for such fields.

Is it possible to update the mappings of our existing indexes to remove these boost settings? If not, what are our possible remedies?

--Mason


(David Pilato) #2

IMHO, I'm not sure you can modify boost in mapping.
Just run a test with a simple mapping and then add a boost on this field and merge mapping.
Modify it again and merge.

If you get MergeException, you will have to reindex all your docs.

That's one of the reason I follow Shay's advice and I now use boost at query Time.

If you don't have anymore your source docs, and you have not disabled _source field, you can scan & scroll your index and reindex in another index (with new settings).

BTW I don't know what is the effect of applying a boost factor at query time on a field with a defined boost. Perhaps, the first one can cancel the second one?

HTH

--
David :wink:
Twitter : @dadoonet / @elasticsearchfr / @scrutmydocs

Le 13 oct. 2012 à 00:09, masonite masonite@gmail.com a écrit :

Hello,

First time posting and fairly new ElasticSearch user... We have some fairly
large indexes which were unfortunately mapped with many fields having a
"boost" factor but also "omit_norms" set to true. In the older versions of
Lucene this wasn't too much of an issue but now when attempting a version
upgrade we've discovered that Lucene 3.6 is throwing exceptions for such
fields.

Is it possible to update the mappings of our existing indexes to remove
these boost settings? If not, what are our possible remedies?

--Mason

--
View this message in context: http://elasticsearch-users.115913.n3.nabble.com/removing-boost-from-an-existing-index-tp4023929.html
Sent from the ElasticSearch Users mailing list archive at Nabble.com.

--

--


(David Pilato) #3

Not sure my first answer has been delivered. Posting it again: sorry for the noise :-/

IMHO, I'm not sure you can modify boost in mapping.
Just run a test with a simple mapping and then add a boost on this field and merge mapping.
Modify it again and merge.

If you get MergeException, you will have to reindex all your docs.

That's one of the reason I follow Shay's advice and I now use boost at query Time.

If you don't have anymore your source docs, and you have not disabled _source field, you can scan & scroll your index and reindex in another index (with new settings).

BTW I don't know what is the effect of applying a boost factor at query time on a field with a defined boost. Perhaps, the first one can cancel the second one?

HTH

--
David :wink:
Twitter : @dadoonet / @elasticsearchfr / @scrutmydocs

Le 13 oct. 2012 à 00:09, masonite masonite@gmail.com a écrit :

Hello,

First time posting and fairly new ElasticSearch user... We have some fairly
large indexes which were unfortunately mapped with many fields having a
"boost" factor but also "omit_norms" set to true. In the older versions of
Lucene this wasn't too much of an issue but now when attempting a version
upgrade we've discovered that Lucene 3.6 is throwing exceptions for such
fields.

Is it possible to update the mappings of our existing indexes to remove
these boost settings? If not, what are our possible remedies?

--Mason

--
View this message in context: http://elasticsearch-users.115913.n3.nabble.com/removing-boost-from-an-existing-index-tp4023929.html
Sent from the ElasticSearch Users mailing list archive at Nabble.com.

--

--


(system) #4