데이터 엔지니어 이것저것

Elasticsearch 클러스터, 노드 및 샤드 본문

오픈소스/ES

Elasticsearch 클러스터, 노드 및 샤드

pastime 2020. 12. 30. 09:48
728x90

엘라스틱 서치는 항상 사용 가능하고 필요에 따라 확장 할 수 있도록 구축되었습니다.
클러스터에 서버 (노드)를 추가하여 용량을 늘릴 수 있으며, 엘라스틱 서치는 사용 가능한 모든 노드에
데이터와 쿼리로드를 자동으로 분산합니다.

Elasticsearch 인덱스는 실제로 하나 이상의 물리적 샤드의 논리적 그룹이며 각 샤드는 실제로 자체 포함 된 인덱스입니다. 인덱스의 문서를 여러 샤드에 분산하고 이러한 샤드를 여러 노드에 분산함으로써 Elasticsearch는 중복성을 보장 할 수 있습니다.이 두 가지 모두 하드웨어 장애로부터 보호하고 노드가 클러스터에 추가 될 때 쿼리 용량을 증가시킵니다. 클러스터가 확장 (또는 축소)되면 Elasticsearch는 자동으로 샤드를 마이그레이션하여 클러스터를 재조정합니다.

샤드에는 기본 및 복제본의 두 가지 유형이 있습니다. 인덱스의 각 문서는 하나의 기본 샤드에 속합니다. 복제본 샤드는 기본 샤드의 복사본입니다. 복제본은 데이터의 중복 사본을 제공하여 하드웨어 오류로부터 보호하고 문서 검색 또는 검색과 같은 읽기 요청을 처리하는 용량을 증가시킵니다.

인덱스의 기본 샤드 수는 인덱스가 생성 될 때 고정되지만 복제본 샤드 수는 인덱싱 또는 쿼리 작업을 중단하지 않고 언제든지 변경할 수 있습니다.

샤드가 많을수록 해당 인덱스를 유지하는 데 더 많은 오버 헤드가 발생합니다. 샤드 크기가 클수록 Elasticsearch가 클러스터를 재조정해야 할 때 샤드를 이동하는 데 더 오래 걸립니다.

작은 샤드를 많이 쿼리하면 샤드 당 처리 속도가 빨라지지만 쿼리가 많을수록 오버 헤드가 증가하므로 적은 수의 큰 샤드를 쿼리하는 것이 더 빠를 수 있습니다.

  • 평균 샤드 크기를 몇 GB에서 수십 GB 사이로 유지하는 것을 목표로합니다. 시간 기반 데이터가있는 사용 사례의 경우 20GB ~ ​​40GB 범위의 샤드를 보는 것이 일반적입니다.
  • 무수한 샤드 문제를 피하십시오. 노드가 보유 할 수있는 샤드 수는 사용 가능한 힙 공간에 비례합니다. 일반적으로 힙 공간 GB 당 샤드 수는 20 개 미만이어야합니다.

 

 

출처 : www.elastic.co/guide/en/elasticsearch/reference/current/elasticsearch-intro.html

728x90

'오픈소스 > ES' 카테고리의 다른 글

docker-compose Elasticsearch  (0) 2020.12.29
엘라스틱서치와 관계형 데이터 베이스 비교  (0) 2020.05.28
ELK란?  (0) 2020.05.26