강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

hahahl님의 프로필 이미지
hahahl

작성한 질문수

김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴

관계형 데이터베이스 vs NoSQL

NoSQL 질문있습니다.

작성

·

32

0

NoSQL은 대규모 분산시스템 환경에서 CAP중에 AP을 주로 선택하는 모델이라 Eventual Consistency모델로 알고 있습니다. 하지만, NoSQL도 서버를 한대만 사용하면 Strong Consistency가 아닌가라는 생각이 들었습니다. 강의에서 설명해주신 NoSQL은 Eventual Consistency모델이다라고 하신거는 일반적인 사용환경이 대규모 분산시스템이기 때문에 Eventual Consistency라고 하신걸까요? 아니면 제가 잘못 생각하고 있는 것일까요?

답변 2

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. hahahl님

생각하신 내용이 맞습니다.

NoSQL도 단일 노드나 특정 설정(예: Quorum Read/Write) 하에서는 강한 일관성을 보장할 수 있습니다. 하지만 NoSQL의 주된 효용 가치인 '대규모 분산 처리' 환경에서는 가용성(Availability)을 확보하기 위해 Eventual Consistency 모델을 채택하는 것이 일반적입니다.

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다. hahahl님 질문에 대한 답변을 드리겠습니다.

NoSQL 데이터베이스는 여러 유형이 있으며, 각 데이터베이스 시스템은 특정 사용 사례에 맞춰 특화된 성능과 데이터 일관성 모델을 제공합니다. NoSQL이 주로 대규모 분산시스템에서 사용되면서, 일반적으로 Eventual Consistency 모델을 채택하는 이유는 확장성 때문입니다. 이는 분산 환경에서의 네트워크 지연 및 노드 간의 통신 문제를 효율적으로 처리하는데 도움을 줍니다.

하지만, 말씀하신 대로 NoSQL을 단일 서버 환경에서 사용한다면, 이론적으로 Strong Consistency를 제공할 수 있습니다. 이는 분산 환경이 아닌 경우 데이터가 항상 즉시 일관되게 유지될 수 있기 때문입니다.

결국, NoSQL이 Eventual Consistency를 강조하는 이유는 대부분 분산 환경에서 최대한의 안정성과 가용성을 확보하기 위해서입니다. 강의에서 이에 대해 설명한 내용도 이런 일반적인 사용 사례에 대한 것이었을 가능성이 큽니다.

NoSQL의 일관성 모델에 대해 더 깊이 이해하고 싶으시다면, NoSQL과 일관성 모델에 대한 김영한님 강의를 참고해 보시기 바랍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

hahahl님의 프로필 이미지
hahahl

작성한 질문수

질문하기