You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A common need while working with ES is to rebuild the index from scratch.
Let's take an example to highlight an issue. I have an index of Products. My products database moves a lot, for stock updates or creation of new products/disabling some others: it changes, a lot. I have 1 000 000 products in my database.
I want to rebuild my products index: this process will take a while, and in the meantime, I need to be consistent with updates on the new and the old index.
To stay consistent, it would be convenient if the IndexationRequest could update many indexes simultaneously, with an extra argument it would be possible. Something like this:
As you can see, there are pros and cons to each method, and every application is different.
What I did one time was to tweak the Indexer to ALWAYS push to a Schrödinger alias next_index and ignore the 404, that way all my updates where always sent to the new index I was building. But that was working only because I didn't to DELETE, and didn't care about performances.
I would love for Elastically to provide an actual implementation of a real zero downtime reindex!
In the meantime, about your suggestion - how does your application knows about the $newIndex? For example if I update a Product from the Admin? 🤔 The new index would have to be stored somewhere?
One alternative proposal could be to tell the Indexer "there is a new Index in progress", and tweak
damienalexandre
changed the title
RFC: specify array of index names in IndexationRequest message
[Feature] Zero-downtime full re-index of Elasticsearch
Nov 13, 2024
A common need while working with ES is to rebuild the index from scratch.
Let's take an example to highlight an issue. I have an index of Products. My products database moves a lot, for stock updates or creation of new products/disabling some others: it changes, a lot. I have 1 000 000 products in my database.
I want to rebuild my products index: this process will take a while, and in the meantime, I need to be consistent with updates on the new and the old index.
To stay consistent, it would be convenient if the IndexationRequest could update many indexes simultaneously, with an extra argument it would be possible. Something like this:
The text was updated successfully, but these errors were encountered: