DB

RDBMS와 NoSQL의 차이점

JUNGKEUNG 2021. 11. 13. 17:07
반응형

DataBase란?


  • 구조화된 정보 또는 데이터의 체계적인 집합을 의미
  • 데이터를 저장하고 관리하는 곳

 

 

 

DBMS


  • 사용자와 DB 사이에서 사용자의 요구에 따라 정보를 생성해주고 DB를 관리해주는 SW

 

 

 

SQL 


  • Structured Query Language의 약자로써, 관계형 데이터베이스 관리 시스템에 저장된 데이터를 관리하기 위해 설계된 프로그래밍 언어

 

 

 

스키마란?


  • 데이터베이스를 구성하는 개체(Entity), 속성(Attribute), 관계(Relationship) 및 제약 조건 등에 관해 전반적으로 정의한 메타데이터의 집합

 

 

 

RDBMS


DBMS는 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고 데이터베이스를 관리해주는 소프트웨어이다. 또한 기존의 RDBMS에서의 저장 방식은 SQL에 의해 저장되고 있으며 정해진 스키마에 따라 데이터를 저장하여야한다. DBMS에 R이 붙는데 이 R은 (Relational)의 약자로 관계형 데이터베이스 관리 시스템을 의미한다. 

  • RDBMS는 RDB를 관리하는 시스템이다
  • RDB모든 데이터를 2차원 테이블 형태로 표현하는 데이터베이스이다.
  • 또한 테이블 간 관계를 가질 수 있다는 것이 가장 큰 특징이다. (Join)

 

 

 

장점과 단점


장점

  • 테이블에 따라 데이터를 저장하여야 하므로 명확한 데이터 구조를 보장한다.

단점

  • 테이블간테이블 간 관계를 맺고 있어 JOIN문이 많은 복잡한 쿼리가 만들어질 수 있습니다.
  • 성능 향상을 위해서는 서버의 성능을 향상 시켜야하는 Scale-up만을 지원비용이 기하급수적으로 증가 할 수 있다.
  • 스키마로 인해 데이터가 유연하지 못하다. 나중에 스키마가 변경 될 경우 번거롭고 어렵습니다.

 

 

 

NoSQL (Non-relational Database)


  • 관계(Join) 이란 개념이 없다.
  • 테이블은 일반 하나의 테이블이며 테이블간 관계를 정의할 수 없다.

 

 

 

장점과 단점


장점

  • NoSQL에서는 스키마가 없기 때문에 유연하며 자유로운 데이터 구조를 가질 수 있다.
  • 언제든 저장된 데이터를 조정하고 새로운 필드를 추가할 수 있습니다.
  • 데이터 분산이 용이하며 성능 향상을 위한 Saclue-up , Scale-out 모두 가능하다.

단점

  • 데이터 중복이 발생할 수 있으며 중복된 데이터가 변경 될 경우 수정을 모든 컬렉션에서 수행을 해야한다.
  • 스키마가 존재하지 않기에 명확한 데이터 구조를 보장하지 않으며 데이터 구조 결정가 어려울 수 있습니다.

 

 

 


참고 자료

https://khj93.tistory.com/entry/Database-RDBMS%EC%99%80-NOSQL-%EC%B0%A8%EC%9D%B4%EC%A0%90

https://universitytomorrow.com/26

'DB' 카테고리의 다른 글

[DataBase] 키(key) & 정규화란?  (0) 2024.11.20
[DataBase] 인덱스와 넌인덱스 특징 & 차이  (0) 2021.11.21