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

song yuheon·2023년 10월 31일
0

CS Study

목록 보기
38/50
post-custom-banner

NoSQL(Not Only SQL)과 RDBMS(Relational Database Management System)는 데이터를 저장하고 관리하는 두 가지 주요한 데이터베이스 시스템입니다.


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


특징

  • 데이터는 테이블 형태로 저장되며, 테이블 간에는 관계가 존재합니다.
  • SQL을 사용하여 데이터를 쿼리하고 관리합니다.
  • 데이터의 일관성과 무결성을 보장하기 위해 ACID 트랜잭션을 지원합니다.
  • 데이터 스키마를 미리 정의해야 하며, 데이터는 이 스키마에 따라 저장됩니다.

장점

  • 강력한 트랜잭션 지원
    ACID 트랜잭션을 통해 데이터의 일관성과 무결성을 보장합니다.

  • 복잡한 쿼리 지원
    SQL을 사용하여 복잡한 쿼리와 데이터 분석을 수행할 수 있습니다

  • 관계 모델링
    데이터 간의 관계를 명확하게 표현하고, 조인 연산을 통해 관련 데이터를 쉽게 검색할 수 있습니다.

단점

  • 확장성의 한계
    대용량의 데이터나 높은 트래픽을 처리하는 데에는 수직 확장에 한계가 있습니다.

  • 유연성 부족
    미리 정의된 스키마에 따라 데이터를 저장해야 하며, 스키마 변경이 어렵습니다.

  • 비용
    고성능의 하드웨어와 라이선스 비용이 발생할 수 있습니다.


NoSQL (Not Only SQL)


특징

  • 관계형 모델이 아닌 다양한 데이터 저장 모델(문서, 키-값, 컬럼 패밀리, 그래프 등)을 사용합니다.

  • 스키마가 없거나 유연한 스키마를 가지고 있어, 다양한 형태의 데이터를 저장할 수 있습니다.

  • 수평 확장이 용이하여, 대용량 데이터와 높은 트래픽을 처리하는 데 적합합니다.

장점

  • 확장성
    데이터와 트래픽이 증가하더라도 서버를 추가하는 방식으로 쉽게 확장할 수 있습니다.

  • 유연성
    스키마가 없거나 유연하여 다양한 형태의 데이터를 저장하고 관리할 수 있습니다.

  • 빠른 성능
    비관계형 모델과 간단한 쿼리를 사용하여 빠른 읽기/쓰기 성능을 제공합니다.

단점

  • 트랜잭션 지원의 한계
    대부분의 NoSQL 데이터베이스는 ACID 트랜잭션을 완벽하게 지원하지 않아, 일관성과 무결성을 보장하기 어려울 수 있습니다.

  • 복잡한 쿼리의 어려움
    SQL만큼 강력한 쿼리 언어를 제공하지 않아, 복잡한 쿼리와 데이터 분석이 어려울 수 있습니다.

  • 표준 부족
    다양한 NoSQL 데이터베이스가 존재하지만, 표준화된 쿼리 언어나 인터페이스가 부족합니다.


결론적으로, RDBMS는 데이터의 일관성과 무결성이 중요하며 복잡한 쿼리가 필요한 경우에 적합하고, NoSQL은 유연한 스키마와 뛰어난 확장성이 필요한 경우에 적합합니다.


profile
backend_Devloper
post-custom-banner

0개의 댓글