CAP 이론

From CS Wiki
Revision as of 08:27, 27 October 2019 by PE가즈아 (talk | contribs)
Consistency, Availability, Partition tolerance

C, A, P 중 2개를 선택해야 한다. (3가지 모두 만족할 순 없음)

CAP 이론.png

  • 일관성(Consistency)
    • 모든 노드들은 같은 시간에 동일한 항목에 대하여 같은 내용의 데이터를 사용자에게 보여준다.
  • 가용성(Availability)
    • 모든 사용자들이 읽기 및 쓰기가 가능해야 하며, 몇몇 노드의 장애 시에도 다른 노드에 영향을 미치면 안된다.
  • 분할내성(Partition tolerance)
    • 메시지 전달이 실패하거나 시스템 일부가 망가져도 시스템이 계속 동작할 수 있어야 한다.

CAP 선택 유형

분류 설명 예시
C+A 메시지 손실을 방지하는 강한 신뢰형
  • 일반적 RDBMS
  • 오라클 등
C+P 모든 노드가 성능을 발휘해야 하는 퍼포먼스형
  • Big Table
  • MongoDB
A+P 일관성을 크게 요하지 않는 서비스에 적합
  • CouchDB
  • Cassandra