토픽 163 / 201·NewSQL 및 특수 목적 DB
Quorum Replication (쿼럼 복제)
Quorum Replication (쿼럼 복제)
분산 시스템에서 읽기/쓰기 연산의 일관성을 보장하기 위해 정족수(Quorum) 이상의 노드에서 응답을 받아야 연산이 성공하는 복제 기법
목적: 데이터 일관성, 가용성 균형, 장애 허용, 분산 합의
특징: N개 노드 중 과반수 응답, CAP 트레이드오프 조절, 읽기/쓰기 쿼럼 설정 가능
쿼럼 공식
- •N: 전체 노드 수
- •W: 쓰기 쿼럼 (쓰기 성공에 필요한 노드 수)
- •R: 읽기 쿼럼 (읽기 성공에 필요한 노드 수)
- •강한 일관성: W + R > N (읽기와 쓰기가 반드시 겹침)
- •예시: N=3, W=2, R=2 → 항상 최신 데이터 읽음
설정 조합 예시
- •W=N, R=1: 쓰기 느림, 읽기 빠름, 강한 일관성
- •W=1, R=N: 쓰기 빠름, 읽기 느림, 강한 일관성
- •W=1, R=1: 빠르지만 일관성 약함 (Eventual)
- •W=Quorum, R=Quorum: 균형 (대부분의 경우)
Quorum 계산: Quorum = floor(N/2) + 1 (과반수)
장점: 일관성/가용성 조절, 장애 허용(N-W+1), 유연한 설정
단점: 지연 증가(다중 응답 대기), 네트워크 파티션 시 쓰기 불가, 복잡한 충돌 해결
적용사례: Cassandra(Tunable Consistency), DynamoDB, Riak, ZooKeeper
기술요소: N/W/R, Quorum, Consistency Level, Hinted Handoff
비교: Quorum(정족수) vs Paxos/Raft(합의 프로토콜) vs Primary-Replica(단일 마스터)
연관: CAP, Eventual Consistency, 분산 데이터베이스, Cassandra, 합의 알고리즘