CAP 이론 (Consistency, Availability, Partition tolerance)
- 분산 데이터베이스의 세 가지 속성을 설명하는 이론
※ 분산 데이터베이스
= Replication과 Sharding으로 분산시킨 데이터베이스
- Consistency (일관성)
: 모든 요청은 최신 데이터 또는 에러를 응답 받는다
ㆍ특정 노드의 변경사항이 시스템에 완전히 반영될때까지 기다리는 것
- Availability (가용성)
: 모든 요청은 정상적인 응답을 받는다
ㆍ분산 된 노드 중 하나의 노드에 장애가 발생해도 서비스를 제공하는 것
=> 이 경우 일관성을 보장할 수 없음
- Partition tolerance (분리 내구성)
: 노드 간 통신이 실패하는 경우라도 시스템은 정상 작동 한다
※ 가용성과의 차이
= 가용성 (특정 노드의 장애 발생)
= 분리내구성 (노드는 정상이나, 네트워크의 장애 발생으로 인해 노드 간 연결이 분리된 상태)
CP 시스템 (일관 / 분리 내구성)
- 완벽한 일관성을 갖는 DBMS
: 하나의 노드라도 문제가 발생할 경우 트랜잭션 롤백
- DBMS
: HBase, MongoDB
AP 시스템 (가용 / 분리 내구성)
- 완벽한 가용성을 갖는 DBMS
: 어떤 상황에서도 사용자에게 응답이 가능
: Replication이 제대로 이뤄지지 않아도 데이터 반환
- DBMS
: Dynamo, CouchDB
CA 시스템 (일관 / 가용성)
- 일관성과 가용성을 위해 네트워크 장애를 허용하지 않는 DBMS
: MySQL과 같은 관계형 DBMS가 이에 속하나 완벽하게 속하지는 않음
PACELC 이론
- CAP이론의 부족한 부분을 보완하기 위해 네트워크 장애 상황과 정상 상황으로 나누어 설명하는 이론
: CAP이론에 해당하는 CA, CP, AP에 완전히 속하는 DBMS는 없음
- CAP, E (정상), L (지연시간), C (일관성)
: P(노드간 통신의 실패 상황)에서의 A(가용성)과 C(일관성)의 상충 관계
: E(정상 상황)에서의 L(지연시간)과 C(일관성)의 상충관계
- 분류
: PC/EC
: PC/EL
: PA/EC
: PA/EL
PACELC이론에 따른 NoSQL DBMS 분류
Refference
CAP 이론과 PACELC 이론
CAP 이론은 분산 데이터베이스 시스템에서 의미있는 이론이다. 분산 데이터베이스의 세 가지 속성인 일관성(Consistency), 가용성(Availability), 네트워크 파티션 허용(Partition tolerance)을 나타낸다. 처음
ohjongsung.io
[DB/분산] 초보자를 위한 CAP 이론
* CAP 은 네트워크로 분산된 DB , FileSystem, state machine (zookeeper 같은) 에서 의미를 가짐. 여담 ) NoSQL 이란게 유비쿼터스,클라우드,빅데이터 같은 상품명 처럼 휩쓸고 지나간 자리에는 더 이상 No..
hamait.tistory.com
'Database > Database' 카테고리의 다른 글
데이터베이스 설계 능력을 기르는 방법 (0) | 2023.04.30 |
---|---|
[백엔드 개발자 로드맵 2020] DATABASE - NoSQL의 종류 (0) | 2021.02.14 |
[백엔드 개발자 로드맵 2020] DATABASE - Sharding (0) | 2021.02.07 |
[백엔드 개발자 로드맵 2020] DATABASE - 리플리케이션 (Replication)과 클러스터링(Clustering) (0) | 2021.02.07 |
[백엔드 개발자 로드맵 2020] DATABASE - 인덱스 구조 (Index Structures) (0) | 2021.02.07 |