Elasticsearch: EP3 - Elasticsearch 아키텍처에 대해 알아보자
- Elasticsearch는 클러스터로 구성되어 있으며, 하나의 클러스터는 여러 개의 노드로 이루어진다. 🏢
- 각 노드는 데이터를 저장하고, 해당 클러스터 내 작업들을 관리하는 "마스터 노드" , 데이터를 저장하고 CRUD 연산을 처리하는 "데이터 노드", 데이터를 가져오고 처리하는 "인지스트 노드"로 분류된다. 👨💻👩💻
- 인덱스는 데이터를 추분하는 저장 공간으로, 관계형 데이터베이스의 테이블과 유사하다. 🗂️
- 각 인덱스는 여러 개의 "샤드"로 나뉘며, 샤드는 여러 노드에 분산되어 저장된다. 分散
- "리플리카 샤드"는 데이터의 복제본을 다른 노드에 저장하여 고가용성과 원본 데이터 손실 방지를 위한 역할을 한다. 🔄
- "게이트웨이"는 클러스터 상태와 메타데이터를 관리하고, Elasticsearch가 처음 시작될 때 사용되는 시작 지침서 역할을 한다. 🎯
- "디스커버리 모듈"은 새로운 노드가 클러스터에 포함될 때 또는 노드 상태가 변경될 때 사용되며, 클러스터 구성 변경을 관리한다. 🔌