본문 바로가기
열심히 직장인/Hello World

ACID 이론과 CAP 이론 비교 정리

by 양파_ 2025. 5. 20.
728x90
반응형

 

구분 ACID 이론 CAP 이론

정의 및
주요 속성
데이터베이스 트랜잭션의 신뢰성과 일관성을 보장하는 4가지 핵심 속성 (원자성, 일관성, 격리성, 지속성) 분산 시스템에서 동시에 보장할 수 없는 3가지 속성 (일관성, 가용성, 파티션 허용성) (2가지만 보장 가능)
Atomicity
원자성
트랜잭션 내 모든 작업은 전부 성공하거나 전부 실패해야 함 Consistency
일관성
모든 노드가 동일한 시점에 동일 데이터를 볼 수 있어야 함
Consistency
일관성
트랜잭션 시행 전과 후의 데이터 베이스 상태가 일관되어야 함
Availability
가용성
성공/실패 여부에 상관없이 모든 요청에 항상 응답할 수 있어야 함
Isolation
격리성
여러 트랜잭션이 동시에 실행될 때 각각의 트랜잭션은 독립적으로 실행되어야 함
Partition
Tolerance

파티션
허용성
파티션 분리(분산 노드간 메시지가 삭제되거나 지연되는 등 네트워크 단절)가 발생해도 시스템이 동작해야 함.
Durability
지속성
트랜잭션이 성공하면 그 결과가 영구적으로 보장되어야 함
적용 대상 전통적 관계형 데이터베이스
(Oracle, MySQL, PostgreSQL 등)
분산 시스템, 분산 데이터베이스
(MongDB, Redis 등)
목적 데이터 무결성, 트랜잭션 신뢰성 보장
(가용성보다 일관성을 우선시함)
분산 환경에서의 데이터 일관성, 가용성, 장애 내성 간의 트레이드오프 설명 (선택적 보장)
대표 사례 하나의 트랜잭션이 항상 ACID 속성을 만족해야 하므로 은행, 금융, ERP 등 데이터 정합성이 최우선인 시스템 완벽한 일관성은 조금 포기하되 대용량 데이터의 빠른 응답성과 확장성을 필요로 하는 SNS, 로그 저장 시스템, 실시간 채팅 서비스, IoT 등
확장성 일관성에 초점을 맞추므로 수평적 확장(분산) 어려움, 주로 수직적 확장 수평적 확장 용이, 대규모 분산 환경에 적합
성능 대용량 데이터 처리 시 성능 저하 대용량의 비정형 데이터 처리 가능
공통점 데이터 일관성, 시스템 신뢰성 강조
주요
차이점
관계형 데이터베이스의 ACID 이론은 ‘트랜잭션’ 관리 원칙으로, 가용성이나 속도보다는 한 트랜잭션 내에서 데이터의 완벽한 정합성, 무결성, 신뢰성에 중점을 둔다.
 
반면 주로 대용량 데이터를 다루는 No-SQL 기반의 CAP 이론은 분산 시스템의 특성이나 한계에 중점을 둔다. 따라서 경우에 따라 즉각적인 일관성을 조금 포기하고 빠른 응답과 가용성을 선택하기도 한다. (일관성을 완전히 포기하는 것은 아니고 일정 시간이 지나면 데이터가 맞춰지게 된다. (Eventually Consistency))

 

반응형