복제본 Shard, Replica

샤드 Shard

샤드는 클러스터에서 인덱스를 분배하고 단일 인덱스의 도큐먼트를 여러 노드로 분할하는데 사용한다.

단일 노드에 저장할 수 있는 데이터양에는 제한이 있으며 그 한계는 노드의 저장소, 메모리, 처리 용량에 따라 결정된다.

샤드를 활용하면 클러스터에서 단일 인덱스 데이터를 분할해 클러스터의 저장소와 메모리, 처리 용량을 적절히 활용할 수 있다.

샤딩 sharding

샤드에 위치한 데이터를 분할하는 과정을 샤딩 sharding 이라고 한다.

확장 및 병렬화 기능을 담당한다.

복제본 Replica

클러스터에서 노드1에 장애가 발생할 경우, 노드1에 위치한 샤드에 저장된 데이터 조각이 손실된다.

엘라스틱서치에서는 replica shard 또는 replica라고 부르는 복제본으로 이런 문제를 해결할 수 있다.

인덱스의 각 샤드는 0개 이상의 복제본을 가질 수 있다.

복제본은 고가용성을 제공하기 위해 만들어진 원본 샤드와 똑같은 데이터를 의미한다.

노드에 장애가 발생하더라도 나머지 노드들이 사용할 수 있는 모든 샤드를 갖고 있다.

복제본은 주 샤드에 장애가 발생하면 주 샤드로 승격될 수 있다.

복제본은 고가용성 및 장애 조치 기능 외에도 쿼리 작업을 수행할 수 있다.