CAP 정리 대 BASE (NoSQL)


12

CAP 정리 대 BASE (NoSQL)

안녕하세요, 저는 NoSQL에 관한 저의 연구를 위해 작은 논문을 작성하려고하는데 CAP 정리를 전부는 아니지만 대부분의 NoSQL 데이터베이스가 준수한다고 설명했습니다. 나중에 NoSQL 데이터베이스가 ACID 대응 BASE를 사용한다고 언급 한 NoSQL과 RDBMS의 차이점에 대한 논문을 읽었습니다.

BASE, ACID 및 CAP의 속성을 알고 있지만 CAP 정리와 BASE의 관계를 파악하기가 어렵습니다. 내가 이해하는 것처럼 CAP 정리는 BASE 약어로 이어지지 만 올바른 결론입니까? 아니면 비슷한 속성을 공유하는 데이터베이스를 "빌드"하는 두 가지 접근 방식입니까?

이 블로그 게시물 (http://www.johndcook.com/blog/2009/07/06/brewer-cap-theorem-base/)에서 저자는 다음과 같이 씁니다.

까다로운 ACID 세계와 비교할 때 내결함성 BASE 세계에서 소프트웨어를 개발하는 것이 더 어렵지만 Brewer의 CAP 정리는 확장하려는 경우 선택의 여지가 없다고 말합니다. 그러나이 프레젠테이션에서 Brewer가 지적한 것처럼 ACID와 BASE 사이에는 연속체가 있습니다. 우선 순위에 따라 연속체의 한쪽 끝에 또는 다른쪽에 얼마나 가까운지를 결정할 수 있습니다.

다른 기사에서 저자는 다음과 같이 씁니다.

위의 많은 NOSQL 데이터베이스는 더 나은 가용성 및 파티셔닝을 달성하기 위해 일관성에 대한 요구 사항을 완화했습니다. 그 결과 시스템은 기본 (기본적으로 사용 가능, 소프트 상태, 결과적으로 일관됨)으로 알려져 있습니다. 이들은 고전적인 의미의 트랜잭션이 없으며 더 나은 파티션 구성표 (예 : Dynamo 시스템 등)를 가능하게하기 위해 데이터 모델에 제약 조건을 도입합니다. 이 소개에서는 CAP, ACID 및 BASE에 대한보다 포괄적 인 논의가 가능합니다.

CAP가 있음이 분명 상태 결과 자료.

누군가 나에게 이것을 명확히하고 혼란을 제거 할 수 있기를 바랍니다.

감사합니다
-Mestika

답변:


15

CAP는 기본적으로 BASE와 ACID가 반대쪽 끝에있는 연속체입니다.

CAP 다이어그램

CAP 는 일관성, 가용성 및 파티션 허용 오차입니다. 기본적으로 그 중 2 개를 선택할 수 있지만 3 개를 모두 수행 할 수는 없습니다.

ACID 는 일관성과 가용성에 중점을 둡니다.

BASE 는 파티션 공차 및 가용성에 중점을두고 창 밖으로 일관성을 제공합니다.


1
좋은 ACID 데이터베이스는 일관성 및 파티션 허용 오차에 중점을 두어야합니다. 파티션 허용 오차를 창 밖으로 내밀면 (단어를 말하면) 파티션이 발생할 때마다 일관성이 깨지기 때문입니다.
피터

ACID는 가용성에 중점을 두지 않습니다 . 'A'는 Atomicity를 나타내며 중단-롤백-재시작과 같은 항목을 포함합니다.
momo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.