How to work with mapping evolution in production?


(Han JU) #1

Hi,

We've already release our public beta and it's backed by a ElasticSearch
cluster as our main document store, it works like a charm in production.
Now we are facing a new problem is mapping evolution. For new feature, new
kinds of query needed by front-end, the mapping need to be modified: add a
new analyzer, change the way one particular field is analyzed, rename some
fields etc.
For us, an obvious solution is to "freeze" the old index and create a new
index with the new mapping, then re-index the content of the old into the
new index. But it needs lots of care since it's production data and
reindexing is time consuming.
So my question here is do we have a better solution for this problem? How
you guys work with this in production settings?

We're using 0.90.7.

Many thanks in advance.

BTW, if you need to know more about your website, have a try of our app:

--
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/8582055d-58df-4faf-8291-fdff531b7f36%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(Binh Ly) #2

Han:

Maybe this article might help:

On Friday, January 24, 2014 5:53:21 AM UTC-5, Han JU wrote:

Hi,

We've already release our public beta and it's backed by a ElasticSearch
cluster as our main document store, it works like a charm in production.
Now we are facing a new problem is mapping evolution. For new feature, new
kinds of query needed by front-end, the mapping need to be modified: add a
new analyzer, change the way one particular field is analyzed, rename some
fields etc.
For us, an obvious solution is to "freeze" the old index and create a new
index with the new mapping, then re-index the content of the old into the
new index. But it needs lots of care since it's production data and
reindexing is time consuming.
So my question here is do we have a better solution for this problem? How
you guys work with this in production settings?

We're using 0.90.7.

Many thanks in advance.

BTW, if you need to know more about your website, have a try of our app:
www.botify.com

--
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/958b1887-5c98-4851-944a-8b35a5635850%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(system) #3