인덱스는 얼만큼의 메모리를 필요로 할까요? 통상적으로 인덱스의 GB당 몇 MB 정도입니다.
이 인덱스는 디스크에서 약 3GB를 차지하며 6개월 전에는 ~5.2MB의 메모리를 필요로 했었습니다. 이것은 ~1:600의 힙:저장 공간 비율입니다. 따라서 각 노드에 총 10TB를 장착했다면, 10TB / 600 = 17GB의 힙이 필요하게 됩니다. 그래야 Geonames 같은 데이터를 저장하는 인덱스를 계속해서 열어둘 수 있습니다. 그러나 보시다시피, 시간이 지나면서 개선이 이루어졌습니다. 포인트(짙은 파랑색)는 훨씬 더 적은 메모리를 요구하기 시작했고, 그 다음에는 용어(분홍색)가 그 다음에는 저장된 필드(초록색)가 마침내 용어가 다시 큰 요인이 됩니다. 힙:저장 공간 비율은 이제 ~1:4000이며 6.x와 초기 7.x 릴리즈에 비해 거의 7배의 개선을 보여줍니다. 이제 10TB의 인덱스를 계속 열어두는 데 단지 2.5GB의 힙 메모리만 필요하게 됩니다.
7.7로 Elasticsearch 힙을 줄이세요!
https://www.elastic.co/kr/blog/significantly-decrease-your-elasticsearch-heap-memory-usage
Elasticsearch 힙 메모리 사용 대폭 감소
Elasticsearch 노드당 가능한 한 많은 데이터를 넣는 것은 종종 비용을 줄이는 데 있어 중요합니다. 데이터 GB당 필요한 힙 메모리의 양을 극적으로 줄이기 위해 Elasticsearch 7.7에서 도입되는 개선 사
www.elastic.co
Hot-Warm architecture란, index의 사용빈도(즉, disk의 I/O 빈도)에 따라 tier를 나눠서 보관하는 방법이다. Tier로는 Hot과 Warm 필요하다면 Frozen까지 나눈다. 각 tier 의 memory : storage의 비는 Hot tier의 경우 1 : 30, Cold tier의 경우 1 : 160이 권장된다. 예를들어, data node를 구성할 때 RAM 16 (GB)인 경우 Hot tier의 경우에는 SSD로 480 (GB)를, Warm tier의 경우에는 HDD로 2.56 (TB)를 준비하면 된다.
| Tier | Goal | Storage | Memory:Storage ratio |
| Hot | Optimize for search | SSD SAN/DAS | 1:30 |
| Warm | Optimize for storage | HDD SAN/DAS | 1:160 |
| Frozen | Optimize for archive | Cheapest SAN/DAS | 1:1000+ |
https://kay0426.tistory.com/48
Elasticsearch, 효율적인 index 보관을 위해 Hot-Warm architecture 도입
서론 Elasticsearch를 처음 도입해야 하는 경우, 클러스터가 기존보다 더 좋은 성능이 나오게 하고 싶은 경우, index를 더 효율적으로 보관하고 싶은경우, 또는 여러가지 이유 등으로 Elastissearch를 사
kay0426.tistory.com
'ELK' 카테고리의 다른 글
| QueryDSL 기반 데이터 조회 및 수정 방법 (0) | 2023.01.30 |
|---|
댓글