Elasticsearch에서 여러 인덱스를 가리키는 인덱스 별칭을 설정하는 방법
인덱스 앨리어싱은 인덱스를 제어할 수 있는 기능을 제공하는 Elasticsearch의 강력한 기능입니다. 가능한 한 많은 인덱스를 생성하고 별칭을 사용하여 올바른 인덱스를 가리키거나 인덱스 별칭이 모든 인덱스를 가리킬 수 있습니다(애플리케이션 요구 사항에 따라 다름).
시나리오
애플리케이션 요구 사항을 위해 Elasticsearch로 작업할 때 다음과 같은 시나리오가 있다고 상상해 보십시오.
시나리오 1: 새 클러스터로 복원해야 하는 인덱스의 스냅샷이지만 복원하는 것을 잊고 대신 새 인덱스를 생성했습니다. 시간이 지남에 따라 새로 생성된 인덱스에 새 데이터가 축적되었고 스냅샷의 데이터를 새 인덱스와 결합해야 한다는 것을 깨달았습니다.
시나리오 2: 특정 스키마 변경 또는 재인덱싱이 필요한 인덱스가 있습니다. 사용자가 가동 중지 시간이 거의 없이 인스턴스에서 검색할 수 있도록 하려면 새로운 스키마 변경으로 새 인덱스를 설정하고 데이터를 다시 인덱싱하십시오.
다중 인덱스 앨리어싱을 소개합니다. 여러 인덱스를 가리키는 단일 인덱스 별칭을 생성할 수 있습니다. 단일 원자 작업에서 하나 이상의 별칭 작업을 수행할 수 있는 Elasticsearch의 엔드포인트가 있습니다.
전제 조건
_alias/alias-name
엔드포인트 - HEAD _alias/my-alias
를 사용하여 사용하려는 별칭이 아직 사용되지 않았는지 확인합니다.단계
POST /_aliases
{
"actions": [
{
"add": {
"index": "new_index",
"alias": "new_index_alias"
}
},
{
"add": {
"index": "old_index",
"alias": "new_index_alias"
}
}
]
}
하지만 새 데이터를 특정 인덱스에 기록하도록 지정하려면 어떻게 해야 할까요?
다음과 같이 페이로드에
**is_write_index**
매개변수를 전달할 수 있습니다.POST /_aliases
{
"actions": [
{
"add": {
"index": "new_index",
"alias": "new_index_alias",
"is_write_index": true
}
},
{
"add": {
"index": "old_index",
"alias": "new_index_alias"
}
}
]
}
보시다시피 Elasticsearch 인스턴스 내의 여러 인덱스를 가리키는 인덱스 별칭을 설정하는 것은 매우 간단합니다.
별칭에서 데이터를 쿼리하려면 다음을 수행하기만 하면 됩니다.
GET /new_index_alias/_search
이렇게 하면 두 인덱스
new_index
및 old_index
에서 쿼리하는 데 도움이 됩니다.이익
가동 중지 시간 없음: 새로운 변경 사항이 포함된 새 인덱스를 가져오고, 준비가 되면 별칭을 새 인덱스로 지정합니다. 나중에 참조하거나 백업용으로 필요할 경우를 대비하여 이전 인덱스를 부실한 상태로 유지하십시오.
다중 인덱스: 다중 인덱스를 쿼리할 수 있기를 원하십니까? 그런 다음 여러 인덱스를 가리키는 별칭을 만듭니다.
자원
Reference
이 문제에 관하여(Elasticsearch에서 여러 인덱스를 가리키는 인덱스 별칭을 설정하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jei/how-to-set-up-an-index-alias-that-points-to-multiple-indices-in-elasticsearch-4g7g텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)