← 질문 목록
#252깊이 0
데이터베이스 복제와 클러스터링의 선택 기준은 무엇인가?
가용성과 읽기 성능 향상과 읽기-쓰기 분리라는 목적에 따라 고른다.
| 기준 | 복제(Replication) | 클러스터링(Clustering) |
|---|---|---|
| 핵심 목적 | 사본을 두어 가용성과 읽기를 늘린다 | 여러 대를 하나처럼 굴려 가용성과 규모를 늘린다 |
| 데이터 일관성 | 복제를 동기로 걸었는지에 따라 다르다 | 합의 방식에 따라 다르다 |
| 구조 | Master-Slave 구조 | 공유 저장소 또는 분산 저장 |
복제는 기본적으로 데이터를 다른 서버로 복사하는 방식이다. 주로 읽기 전용 복제본(Slave)을 늘려 읽기 트래픽을 분산시킨다. 데이터가 복사되는 시점차로 인해 복제 지연(Replication Lag) 방향으로 파고들 수 있다.
클러스터링은 여러 대의 서버를 하나의 시스템처럼 동작하게 한다. 노드 하나가 죽어도 서비스가 중단되지 않는 고가용성(HA)이 핵심이다. 공유 저장소를 사용하거나 데이터 샤딩으로 처리량을 높인다.
읽기 요청이 쓰기보다 훨씬 많다면 복제를 선택한다. 쓰기가 잦고 중단 없는 운영이 우선이라면 클러스터링을 검토한다.