NOSQL vs SQL

이상수·2022년 11월 28일
0

CS - 데이터베이스

목록 보기
1/2

1. SQL 이란?

  • 관계형 데이터베이스(RDBMS)로써, 데이터는 정해진 데이터 스키마에 따라 테이블에 저장
  • 데이터는 관계를 통해 여러 테이블에 분산된다.
  • 테이블에 레코드로 저장되는데, 테이블 마다 명확하게 정의된 구조가 있어 테이블 스키마를 준수하지 않는 레코드는 추가할 수 없음
  • 데이터의 중복을 피하기 위해 '관계'를 이용한다.
  • Mysql, MariaDB, Oracle 등
  • 대체적으로 수직적 확장만 가능하고, 사전에 스키마를 정해야함


2. NOSQL

  • 비 관계형 데이터베이스(DBMS)로써, 스키마와 관계가 없음
  • 레코드를 문서라 부르며, 스키마가 없어 다른 구조의 데이터를 같은 컬렉션에 추가 가능
  • 문서는 JSON과 비슷한 형태로, 관련 데이터를 동일한 '컬렉션(:테이블같은)'에 넣는다.
  • 따라서, 여러 테이블을 조인할 필요없이 이미 컬렉션 그 자체로 필요한 데이터를 모두 가지고있음
  • 수직 및 수평 확장이 용이하고 언제든 원하는 필드를 추가할 수 있음
  • 데이터를 읽기 위주로 쓸 때 용이, 수정이 적을 때
  • 여러 컬렉션에 같은 데이터가 중복되어 있을수도 있음, 수정을 위해서 모든 컬렉션에서 수행 필요

profile
Will be great Backend-developer

0개의 댓글