2023년 1월 1일
08:00 AM
Buffering ...

최근 글 👑

[백엔드] 기술 면접 Top30 - #1 NoSQL과 RDBMS의 특징과 차이점에 관한 장, 단점

2023. 9. 2. 15:00ㆍ[백엔드] 기술면접
반응형

RDBMS (관계형 데이터베이스 관리 시스템)

 

특징

  1. 정형 데이터: RDBMS는 정해진 스키마에 따라 데이터를 구조화하며, 테이블 간의 관계를 사용하여 데이터를 저장합니다. 
  2. SQL 사용: SQL (Structured Query Language)을 사용하여 데이터를 조작하고 쿼리 합니다. SQL은 강력한 질의 언어로 간단한부터 복잡한 데이터 조작이 가능합니다. 
  3. 트랜잭션 지원: RDBMS는 ACID (원자성, 일관성, 고립성, 지속성) 트랜잭션을 지원하여 데이터 일관성을 보장합니다. 

  4. 스케일 업: 대부분의 RDBMS는 수직 스케일링을 사용하여 높은 성능을 얻으려고 합니다. 이는 더 강력한 하드웨어로 업그레이드하는 방식입니다.

장점

  • 데이터 일관성과 무결성을 보장합니다. 
  • 복잡한 쿼리와 조인을 지원하므로 다양한 데이터 분석 작업에 적합합니다.

단점

  • 스케일 업이 비용이 높을 수 있으며, 수평 스케일링에 어려움이 있습니다. 
  • 대량의 데이터를 다루거나 유연한 스키마가 필요한 경우에는 성능 문제가 발생할 수 있습니다.

 

NoSQL

 

특징

  1. 비정형 또는 반정형 데이터: NoSQL은 스키마가 없거나 유연한 스키마를 제공하며, 다양한 데이터 유형을 저장할 수 있습니다. 

  2. 다양한 모델: 다양한 NoSQL 데이터베이스 유형이 있으며, 문서, 열 지향, 그래프, 키-값 저장소 등 다양한 모델을 지원합니다. 

  3. 분산 데이터베이스: NoSQL은 수평 스케일링을 통해 대규모 데이터를 처리할 수 있습니다. 

  4. CAP 이론: NoSQL 데이터베이스는 일반적으로 일관성, 가용성 및 분할 내성 중 두 가지만 보장할 수 있는 CAP 이론을 따릅니다.

장점

  • 대규모 데이터 처리 및 수평 확장에 적합합니다. 
  • 유연한 스키마로 데이터 모델을 쉽게 변경할 수 있습니다.

단점

  • 데이터 일관성을 보장하지 못할 수 있으며, 특정 상황에서는 데이터 손실이 발생할 수 있습니다. 
  • 복잡한 쿼리와 조인은 처리하기 어려울 수 있습니다.

 

요약

RDBMS는 정형 데이터와 SQL 사용으로 데이터 일관성을 제공하며, NoSQL은 비정형 데이터와 수평 확장으로 대규모 데이터 처리에 용이하다. RDBMS는 복잡한 쿼리와 무결성에 강점을 가지고, NoSQL은 유연한 스키마와 분산 환경에 적합하다. 선택은 프로젝트 요구와 목표에 따라 결정되어야 합니다.
반응형