CNF Taxonomies

CNF Taxonomies는 정보를 체계적으로 분류하고 조직화하기 위해 정의된 계층적 분류 체계입니다.

CAP Theorem


CAP Theorem(CAP 정리)은 분산 시스템이 일관성(Consistency), 가용성(Availability), 분할 내성(Partition Tolerance)이라는 세 가지 속성을 동시에 모두 완전하게 보장할 수 없다는 이론이다. 네트워크 분할이 발생하면 일관성과 가용성 중 하나를 선택해야 한다.
CAP 정리는 분산 데이터베이스와 시스템을 설계할 때 근본적인 트레이드오프를 이해하는 기준이 된다. 실제 시스템은 요구사항에 따라 CP 또는 AP 특성을 선택해 설계된다.

주요 특징

  • 세 가지 속성: 일관성·가용성·분할 내성을 정의함.
  • 트레이드오프: 분할 시 일관성과 가용성 중 선택을 요구함.
  • 분할 내성 전제: 분산 환경에서는 네트워크 분할을 가정함.
  • 설계 지침: 분산 시스템 설계의 근본 원칙을 제시함.
  • CP/AP 분류: 시스템 특성을 두 유형으로 구분함.

장점

  • 설계 명확화: 분산 시스템의 트레이드오프를 이해하게 함.
  • 요구 기반 선택: 용도에 맞는 특성을 선택하도록 안내함.
  • 일관된 판단: 데이터 저장소 선택의 기준을 제공함.
  • 위험 인식: 분할 상황의 영향을 예측하게 함.
  • 아키텍처 정렬: 시스템 목표와 설계를 일치시킴.

관련 용어

  • 일관성(Consistency): 모든 노드가 동일한 데이터를 보는 성질.
  • 가용성(Availability): 모든 요청이 응답을 받는 성질.
  • 분할 내성(Partition Tolerance): 네트워크 분할에도 동작을 유지하는 성질.
  • BASE: 가용성을 중시하는 분산 시스템 설계 원칙.
  • 최종 일관성: 시간이 지나면 데이터가 일치하는 성질.

주요 솔루션 및 사용 사례

  • 주요 솔루션
    • CP 시스템: 일관성을 우선하는 분산 저장소(예: etcd).
    • AP 시스템: 가용성을 우선하는 분산 저장소(예: Cassandra).
    • 분산 합의: Raft·Paxos로 일관성을 확보하는 알고리즘.
    • 복제 전략: 데이터 복제로 가용성과 내구성을 높임.
    • 최종 일관성 모델: 가용성을 위해 일관성을 지연 보장함.
  • 사용 사례
    • 데이터베이스 선택: 일관성·가용성 요구에 맞는 DB를 고름.
    • 분산 시스템 설계: 분할 상황의 동작을 정의함.
    • 마이크로서비스 데이터: 서비스별 데이터 일관성 전략을 수립함.
    • 고가용 서비스: 가용성 우선 설계를 적용함.
    • 금융 트랜잭션: 강한 일관성이 필요한 시스템을 설계함.

Go to Top