I have a time-series index. I create a new version once a day using the
format index-name-YYYY-mm-dd.
When creating the index, I assign it a constant alias of 'index-name'.
This way, clients can just refer to the 'index-name', and not have to
append the timestamp. I create the alias when I create the index so it's
an atomic operation; however I create a new index every day and am
assigning it the same alias. This is blowing up as you can't have the same
alias point to multiple indexes. I'm trying to fix this but can't find an
atomic way to:
create the new index
remove the alias from the old index
add the alias to the new index
I can do 1/3 atomically using the index API or 2/3 atomically using the
alias API, but I can't find a way to do all three.
You can have an alias point to multiple indices. With time-series data,
this should be a problem since you will not have overlap between the
different indices. But I think you are correct in that there is no atomic
way to accomplish all three.
I only search against aliases, so having an index without an alias is
acceptable since I can accomplish the last 2 steps atomically without
interfering querying (some data might not be available).
I have a time-series index. I create a new version once a day using the
format index-name-YYYY-mm-dd.
When creating the index, I assign it a constant alias of 'index-name'.
This way, clients can just refer to the 'index-name', and not have to
append the timestamp. I create the alias when I create the index so it's
an atomic operation; however I create a new index every day and am
assigning it the same alias. This is blowing up as you can't have the same
alias point to multiple indexes. I'm trying to fix this but can't find an
atomic way to:
create the new index
remove the alias from the old index
add the alias to the new index
I can do 1/3 atomically using the index API or 2/3 atomically using the
alias API, but I can't find a way to do all three.
On Tue, Jul 29, 2014 at 2:57 PM, Ivan Brusic ivan@brusic.com wrote:
You can have an alias point to multiple indices. With time-series data,
this should be a problem since you will not have overlap between the
different indices. But I think you are correct in that there is no atomic
way to accomplish all three.
I only search against aliases, so having an index without an alias is
acceptable since I can accomplish the last 2 steps atomically without
interfering querying (some data might not be available).
I have a time-series index. I create a new version once a day using the
format index-name-YYYY-mm-dd.
When creating the index, I assign it a constant alias of 'index-name'.
This way, clients can just refer to the 'index-name', and not have to
append the timestamp. I create the alias when I create the index so it's
an atomic operation; however I create a new index every day and am
assigning it the same alias. This is blowing up as you can't have the same
alias point to multiple indexes. I'm trying to fix this but can't find an
atomic way to:
create the new index
remove the alias from the old index
add the alias to the new index
I can do 1/3 atomically using the index API or 2/3 atomically using the
alias API, but I can't find a way to do all three.
Typo: With time-series data, this should NOT be a problem
On Tue, Jul 29, 2014 at 11:57 AM, Ivan Brusic ivan@brusic.com wrote:
You can have an alias point to multiple indices. With time-series data,
this should be a problem since you will not have overlap between the
different indices. But I think you are correct in that there is no atomic
way to accomplish all three.
I only search against aliases, so having an index without an alias is
acceptable since I can accomplish the last 2 steps atomically without
interfering querying (some data might not be available).
I have a time-series index. I create a new version once a day using the
format index-name-YYYY-mm-dd.
When creating the index, I assign it a constant alias of 'index-name'.
This way, clients can just refer to the 'index-name', and not have to
append the timestamp. I create the alias when I create the index so it's
an atomic operation; however I create a new index every day and am
assigning it the same alias. This is blowing up as you can't have the same
alias point to multiple indexes. I'm trying to fix this but can't find an
atomic way to:
create the new index
remove the alias from the old index
add the alias to the new index
I can do 1/3 atomically using the index API or 2/3 atomically using the
alias API, but I can't find a way to do all three.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.