본문 바로가기

면접준비

NoSQL과 RDBMS의 특징과 차이점에 대해서 장, 단점을 들어 설명해주세요.

NoSQL (Not Only SQL)과 RDBMS (Relational Database Management System)는 데이터베이스 시스템의 두 가지 주요 유형입니다. 각각의 특징과 차이점은 다음과 같습니다.

NoSQL (비관계형 데이터베이스)

특징:

  1. 스키마 없음 (Schema-less): NoSQL은 스키마가 고정되어 있지 않아, 다양한 종류의 데이터를 저장할 수 있습니다.
  2. 수평 확장성 (Horizontal Scalability): 대부분의 NoSQL은 분산 데이터베이스로, 샤딩 등을 통해 수평 확장이 가능합니다.
  3. 유연한 데이터 모델: 다양한 데이터 모델을 지원하며, 키-값, 문서, 열 지향, 그래프 등 다양한 형태의 데이터를 다룰 수 있습니다.
  4. 높은 성능: 특정 작업에 특화된 구조를 가지고 있어, 해당 작업에서 높은 성능을 낼 수 있습니다.

장점:

  • 유연성: 다양한 형태의 데이터를 다룰 수 있습니다.
  • 확장성: 대용량 데이터를 다룰 때 쉽게 분산 처리할 수 있습니다.
  • 빠른 응답 시간: 특정 작업에 특화된 구조로 인해 높은 성능을 제공할 수 있습니다.

단점:

  • 일관성 모델의 부재: 데이터의 일관성을 보장하기 위한 트랜잭션 처리가 RDBMS에 비해 어려울 수 있습니다.
  • 표준이 없음: NoSQL 각각의 데이터베이스가 독자적으로 발전하고 있어, 일관된 표준이 부재할 수 있습니다.
  • 복잡한 쿼리: 명시적인 쿼리 언어가 부족하고, 조인 등의 연산이 제한적일 수 있습니다.

RDBMS (관계형 데이터베이스)

특징:

  1. 스키마 (Schema): 고정된 스키마를 가지고 있어, 데이터의 일관성을 유지합니다.
  2. 정규화: 데이터 중복을 최소화하기 위해 정규화를 통한 구조화된 데이터를 유지합니다.
  3. ACID 트랜잭션: 원자성, 일관성, 고립성, 지속성을 보장하는 트랜잭션 처리를 제공합니다.
  4. 복잡한 쿼리: 다양한 연산과 조인을 활용한 복잡한 쿼리를 지원합니다.

장점:

  • 일관성: 트랜잭션 처리를 통해 데이터 일관성을 보장합니다.
  • 표준 SQL: SQL 쿼리 언어를 통해 표준화된 데이터 처리가 가능합니다.
  • 명확한 구조: 정해진 스키마로 데이터가 구조화되어 있어 데이터의 일관성이 높습니다.

단점:

  • 확장성 제약: 수직 확장만 가능하며, 대용량 데이터 처리에 한계가 있을 수 있습니다.
  • 유연성 부족: 다양한 형태의 데이터 처리가 어려울 수 있습니다.
  • 높은 비용: 상대적으로 높은 비용이 발생할 수 있습니다.

요약:

  • NoSQL은 유연성과 확장성에 강점을 가지고 있으며, 대용량이나 다양한 형태의 데이터 처리에 적합합니다.
  • RDBMS는 일관성과 데이터 일관성이 중요한 시스템에서 적합하며, 정형화된 데이터 처리에 강점을 가지고 있습니다.

 

 

 

NoSQL (비관계형 데이터베이스):

특징:

  • 스키마 없음 (Schema-less)
  • 수평 확장성 (Horizontal Scalability)
  • 유연한 데이터 모델
  • 높은 성능

장점:

  • 유연성과 확장성
  • 빠른 응답 시간

단점:

  • 일관성 모델의 부재
  • 표준 부재

RDBMS (관계형 데이터베이스):

특징:

  • 스키마 (Schema)
  • 정규화
  • ACID 트랜잭션
  • 복잡한 쿼리 지원

장점:

  • 일관성
  • 표준 SQL

단점:

  • 확장성 제약
  • 유연성 부족

요약:

  • NoSQL은 유연성과 확장성이 강조되며, 대용량 및 다양한 데이터에 적합합니다.
  • RDBMS는 일관성과 표준 SQL을 중시하며, 정형화된 데이터에 적합합니다.