일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- SearchAPI
- 코딩테스트 #C++
- C++
- 설치방법
- ILM
- Python
- Elasticsearch #
- 백준
- groupby
- Elastic Stack
- import에러
- CS지식의정석
- SQL
- 프로그래머스
- 기초지식
- sklearn
- 설치에러
- Trino
- elasticsearch
- 설치
- 코딩테스트
- MySQL
- Es
- elasticsearch #analyzer #nori #ngram
- CS지식
- ES 인덱싱
- SQL #코딩테스트 #IT
- query
- Spark
- ETL
- Today
- Total
PONI's 좋은 개발자
[Elasticsearch] 인덱스 수명 주기 관리 본문
인덱스 수명 주기 관리(ILM)
Hot-Warm-Cold 아이텍처는 로깅 또는 메트릭과 같은 시계열 데이터에 일반적으로 사용됩니다.
Hot, Warm, Cold 및 Delete 4단계를 정의합니다.
ILM 설정
예시)
put /_ilm/policy/test_policy
{
"policy": {
"phases": {
"hot": {
"actions": {
"rollover": {
"max_size": "5GB",
"max_docs": "10000",
"max_age": "30d"
},
"set"priority": {
"priority": 50
}
}
},
"warm": {
"min_age": "7d",
"actions": {
"forcemerge": {
"max_num_segments": 1
},
"shrink": {
"number_of_shards": 1
},
"allocate": {
"require": {
"data": "warm"
}
},
"set_priority": {
"priority": 25
}
}
},
"cold": {
"min_age": "30d",
"actions": {
"set_priority": {
"priority": 0
},
"freeze": {},
"allocate": {
"require": {
"date": "cold"
}
}
}
},
"delete": {
"min_age": "60d",
"actions": {
"delete": {}
}
}
}
}
}
Hot
ILM정책(Infomation Lifecycle Management)은 hot 인덱스가 다른 인덱스보다 먼저 복구되도록 인덱스 우선순위를 높은 값으로 설정하는 것으로 시작합니다.
30일후 또는 50GB에 도달하면(둘 중 먼저 충족하는 조건이 적용) 인덱스가 롤오버되고 새 인덱스가 생성됩니다. 이 새인덱스는 정책을 처음부터 다시 시작하며, 현재 인뎃스는 롤오버된 후 최대 7일 동안 기다렸다가 warm 단계로 진입합니다.
Warm
인덱스가 warm 단계로 진입하면 ILM이 인덱스를 샤드 1개로 축소하고, 인덱스를 세그먼트 1개로 강제 병합하고, hot보다 낮은 값으로 인덱스 우선순위를 설정하여 할당 작업을 통해 인덱스를 warm 노드로 옮깁니다. 이동이 완료되면 30일을 기다렸다가 cold 단계로 진입합니다.
Cold
인덱스가 cold 단계로 진입하면 ILM이 다시 한번 인덱스우선순위를 낮춰 hot 및 warm 인덱스가 먼저 복구되도록 합니다. 그런 다음 인덱스를 고정하고 cold 노드로 옮깁니다., 이동이 완료되면 60일을 기다렸다가 delete 단계로 진입합니다.
Delete
Delete 단계에서는 인덱스를 삭제하는 삭제 작업을 말합니다. 주어진 기간 동안 인덱스가 hot, warm 또는 cold 단계에 유지될 수 있도록 항상 삭제 단계에 대한 min_age를 지정해야 합니다.
<개선사항은 언제든지 댓글로 부탁드립니다!>
'ETL > Elasticsearch' 카테고리의 다른 글
[Elasticsearch] 실무에서 자주 사용하는 쿼리(업데이트) (0) | 2023.10.17 |
---|---|
[Elasticsearch] 실무에서 자주 사용하는 쿼리(날짜) (0) | 2023.09.12 |
[Elasticsearch] 실무에서 자주 사용하는 쿼리(검색) (0) | 2023.06.14 |
[Elasticsearch] Analyzer(nori, nGram) (0) | 2023.06.01 |
[Elasticsearch] 인덱스 검색 방법(Search API) (0) | 2022.10.21 |