각 인덱스는 primary shard와 replica로 나뉘어 분산된다
Elasticsearch의 index는 논리적인 이름이고, 실제 저장은 하나 이상의 shard로 쪼개집니다. 각 shard는 Lucene index 하나에 해당하며, 문서는 정확히 하나의 primary shard에 소속됩니다. replica shard는 그 primary의 복제본입니다. 이렇게 쪼개서 여러 노드에 배치하면, 저장 용량과 검색 부하를 분산할 수 있습니다.
쓰기 요청은 먼저 primary shard가 처리하고, 그 결과를 replica들에게 복제합니다. 반면 읽기 요청은 primary 또는 replica 어느 쪽이든 처리할 수 있어서, replica는 장애 복구뿐 아니라 읽기 처리량 증가에도 기여합니다. Elasticsearch는 기본적으로 읽기 시 active shard copy를 선택해 요청을 보냅니다.
쉽게 말하면, primary는 “원본 담당”, replica는 “복사본 담당”입니다. 원본은 쓰기를 책임지고, 복사본은 장애 시 대체와 읽기 분산을 돕습니다.




