index alias

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

index alias

derrickburns
Can an index alias refer to other aliases (as long as a cycle is not introduced)?
Reply | Threaded
Open this post in threaded view
|

Re: index alias

kimchy
Administrator
No, it can only point to an index...

On Mon, Jan 23, 2012 at 11:10 PM, Derrick <[hidden email]> wrote:
Can an index alias refer to other aliases (as long as a cycle is not introduced)?

Reply | Threaded
Open this post in threaded view
|

Re: index alias

derrickburns
That's too bad.  Here is my need:

I want to offer real time searches on time based data. I implement that with using a set of indices.  One index holds "recent" data, which the other indices hold "older" data.  A single alias pointing to the concrete indices would work just fine, except ...

To avoid the need to synchronize data movement between the recent and the older indices, some of the data in the "recent" index is replicated in the "older" indices. Therefore, to avoid getting back duplicate results, I filter the data. Your filtered alias feature looks like a perfect fit.  But I need different filters on the recent index and the older indices. 

I suppose that I could update the TTL value dynamically on the recent index as data is added to the older indices.   This presumes that a document that exceeds the TTL value won't be returned in a search.  However, this would require synchronization between the two set of indices, which, as I said, I would like to avoid.

So, I was hoping that I could have a single alias "all" which would refer to the "recent" filtered alias and the "older" filtered alias.
Reply | Threaded
Open this post in threaded view
|

Re: index alias

Berkay Mollamustafaoglu-2
You can search through multiple indices together. Would that not help?

Regards,
Berkay Mollamustafaoglu
mberkay on yahoo, google and skype


On Mon, Jan 23, 2012 at 5:45 PM, Derrick <[hidden email]> wrote:
That's too bad.  Here is my need:

I want to offer real time searches on time based data. I implement that with using a set of indices.  One index holds "recent" data, which the other indices hold "older" data.  A single alias pointing to the concrete indices would work just fine, except ...

To avoid the need to synchronize data movement between the recent and the older indices, some of the data in the "recent" index is replicated in the "older" indices. Therefore, to avoid getting back duplicate results, I filter the data. Your filtered alias feature looks like a perfect fit.  But I need different filters on the recent index and the older indices. 

I suppose that I could update the TTL value dynamically on the recent index as data is added to the older indices.   This presumes that a document that exceeds the TTL value won't be returned in a search.  However, this would require synchronization between the two set of indices, which, as I said, I would like to avoid.

So, I was hoping that I could have a single alias "all" which would refer to the "recent" filtered alias and the "older" filtered alias.

Reply | Threaded
Open this post in threaded view
|

Re: index alias

Michael Sick
In reply to this post by derrickburns
Derrick,

Why not have a few aliases and time slice your data indexes a little more narrowly to avoid having to migrate the data? If you have say an index per day you can alias each day's data to an alias for 'today', 'recent', and 'old'. If you choose this approach, take a look at index templates to make it easy. Hope that helps.

--Mike

On Mon, Jan 23, 2012 at 5:45 PM, Derrick <[hidden email]> wrote:
That's too bad.  Here is my need:

I want to offer real time searches on time based data. I implement that with using a set of indices.  One index holds "recent" data, which the other indices hold "older" data.  A single alias pointing to the concrete indices would work just fine, except ...

To avoid the need to synchronize data movement between the recent and the older indices, some of the data in the "recent" index is replicated in the "older" indices. Therefore, to avoid getting back duplicate results, I filter the data. Your filtered alias feature looks like a perfect fit.  But I need different filters on the recent index and the older indices. 

I suppose that I could update the TTL value dynamically on the recent index as data is added to the older indices.   This presumes that a document that exceeds the TTL value won't be returned in a search.  However, this would require synchronization between the two set of indices, which, as I said, I would like to avoid.

So, I was hoping that I could have a single alias "all" which would refer to the "recent" filtered alias and the "older" filtered alias.

Reply | Threaded
Open this post in threaded view
|

Re: index alias

derrickburns
In reply to this post by Berkay Mollamustafaoglu-2
Duhhh, search on the two filtered aliases!  I am slow today!  

Thx
Reply | Threaded
Open this post in threaded view
|

Re: index alias

dib.g
This post has NOT been accepted by the mailing list yet.
In reply to this post by Michael Sick
Ho,

I have a similar need from ElasticSearch (v0.90.5). I am indexing logs on a monthly basis e.g. one index per month. So lets say I have the following indices: flume-01-13, flume-02-13, flume-03-13, .... flume-11-13.

I want to create an alias, say current_alias that will point to indices created 3 months from the current month meaning flume-11-13, flume-10-2013, flume-09-2013 in the month of Nov,2013 and will be pointing to flume-12-13, flume-11-2013 and flume-10-2013 in Dec, 2013 and so on.

Is there any way of creating aliases which are dynamic and can be set by matching some rule / regex?

Thanks,
- Dib