설계 요구사항
- 분산 키-값 저장소
- 높은 가용성, 데이터 일관성, 규모 확장성, 짧은 응답 지연
- CAP 정리 : 데이터 일관성, 가용성, 파티션 감내를 동시에 만족하는 분산 시스템을 설계하는 것은 불가능하다.
- CP : 일관성과 파티션 감내(네트워크 장애), 가용성 희생. 일관성을 달성하기 전까지 쓰기 연산을 막는다.
- AP : 가용성과 파티션 감내, 일관성 희생. 가용성을 달성하기 위해 데이터 일관성이 깨지더라도 읽기 연산을 지원한다. 보통 깨진 일관성은 클라이언트가 처리한다.
- CA : 일관성과 가용성, 파티션 감내 희생. 하지만 네트워크 장애는 피할 수 없므로 이 모델은 존재하지 않음.
핵심 컴포넌트 및 기술
- 데이터 파티션
- 데이터 다중화
- 일관성
- 일관성 불일치 해소
- 장애 처리
- 시스템 아키텍처 다이어그램
- 쓰기 경로
- 읽기 경로