Skip to content

Latest commit

 

History

History
64 lines (43 loc) · 3.99 KB

File metadata and controls

64 lines (43 loc) · 3.99 KB

RDB vs NoSQL

RDB(Relational Database)와 NoSQL(Not only SQL)은 데이터베이스 시스템의 두 가지 주요 유형입니다.

RDB는 관계형 데이터베이스를 기반으로하는 데이터베이스 시스템입니다. 이것은 테이블 형태로 데이터를 저장하며 각 테이블은 고유한 키와 열로 구성됩니다. RDB는 SQL(Structured Query Language)을 사용하여 데이터를 검색하고 처리합니다.

반면에 NoSQL은 데이터를 저장하기 위한 새로운 방법으로 개발되었습니다. NoSQL 데이터베이스는 관계형 모델에 의존하지 않으며, 대신 다양한 데이터 모델을 지원합니다. NoSQL은 대용량 데이터를 더 빠르게 처리할 수 있으며, 수평적 확장성과 높은 가용성을 제공합니다.

다음은 RDB와 NoSQL의 주요 차이점과 장단점입니다.

  1. 데이터 모델

RDB는 관계형 데이터 모델을 사용하며, 데이터는 테이블 형태로 저장됩니다. 이것은 정형화된 데이터에 적합합니다. NoSQL은 다양한 데이터 모델을 지원하며, 비정형화된 데이터에 적합합니다.

  1. 수평적 확장성

RDB는 수직적 확장만 가능합니다. 즉, 서버의 성능을 높이는 것으로만 확장할 수 있습니다. NoSQL은 수평적 확장이 가능하며, 클러스터에 노드를 추가함으로써 확장할 수 있습니다.

  1. 트랜잭션 처리

RDB는 ACID(원자성, 일관성, 고립성, 지속성) 트랜잭션을 처리할 수 있습니다. NoSQL은 기본적으로 ACID를 지원하지 않지만, 일부 NoSQL 데이터베이스는 ACID를 지원합니다.

  1. 데이터 일관성

RDB는 데이터 일관성을 유지하기 위해 제약 조건을 사용합니다. 이는 데이터 정합성을 보장합니다. NoSQL은 제약 조건을 사용하지 않으며, 일관성 모델은 데이터베이스에 따라 다릅니다.

  1. 성능

NoSQL은 대용량 데이터를 더 빠르게 처리할 수 있습니다. RDB는 작은 규모의 데이터를 빠르게 처리할 수 있지만, 대규모 데이터 처리에는 제한이 있습니다.

RDB의 장점은 데이터의 일관성과 무결성을 보장하며, 데이터가 정형화되어 있을 때 효과적입니다. 반면, NoSQL은 비정형화된 데이터에 적합하며, 대규모 데이터 처리와 수평적 확장이 가능하므로 대규모 분산 시스템을 구축하는 데 유용합니다.

하지만 NoSQL은 데이터의 일관성을 보장하지 않고, ACID 트랜잭션을 지원하지 않을 수 있습니다. 또한, NoSQL 데이터베이스는 다양한 데이터 모델을 지원하므로, RDB의 관계형 모델보다는 덜 구조화된 데이터를 다루는 데 더 적합합니다.

따라서, 데이터의 구조와 규모, 일관성, 확장성 등에 따라 RDB와 NoSQL 중에서 선택해야 합니다. RDB는 정형화된 데이터에 적합하며, 데이터 일관성과 무결성을 보장합니다. 반면에 NoSQL은 비정형화된 데이터와 대규모 분산 시스템에 적합하며, 수평적 확장이 가능합니다.


키워드..

스키마, 수직적확장,수평적확장,샤딩(같은 테이블 스키마를 가진 데이터를 다수의 DB에 분산하여 저장..)
ACID, CAP 이론

CAP 3개중 2개만 만족한다 ... 일반적으로 RDBMS는 일관성 가용성 , NoSQL은 일관성,분산허용 or 가용성,분산허용

  • Consistency (일관성) : 모든 요청은 최신 데이터 또는 에러를 응답받는다. (DB가 3개로 분산되었다고 가정할 때, 하나의 특정 DB의 데이터가 수정되면 나머지 2개의 DB에서도 수정된 데이터를 응답받아야 한다.)
  • Availability (가용성) : 모든 요청은 정상 응답을 받는다. (특정 DB가 장애가 나도 서비스가 가능해야 한다.)
  • Partitions Tolerance (분산 허용) : DB간 통신이 실패하는 경우라도 시스템은 정상 동작 한다.

추가 키워드

NoSQL이 좋은경우

  • 조회관점에서 CQRS 패턴...

  • 저장간점에서 ...