본문 바로가기
  • 시 쓰는 개발자
CS 개념/DB

SQL과 NoSQL의 차이

by poetDeveloper 2023. 11. 9.

프로젝트를 하다보면 SQL은 뭐니까~ NOSQL은 뭐라서 ~~ .... 이런 이야기를 많이 하는데 속으로 뭔지 몰라서 멍하니 있었다. 이번 기회에 제대로 잡아보자.

 

  SQL NoSQL
관계 관계형 DB (RDB) 비관계형 DB
스키마 SQL을 사용, 스키마를 미리 정해둔다. 구조화되지 않은 데이터를 위한 동적 스키마
확장방식 수직적 확장 수평적 확장
데이터 형식 테이블 기반 문서, key-value, 그래프 기반
유지비용, DB복잡도 높다 낮다
DB예시 MySQL, MariaDB, Oracle MongoDB, Redis

SQL과 NoSQL의 주요 차이점은 ?

  • 테이블간의 관계 여부
  • SQL : 테이블이 구성되고 테이블은 특정 구조를 가지며 테이블끼리 연결된다. 따라서 SQL은 특정 방식으로 액세스해야 하는 데이터를 저장할 때 유용하다.
  • NoSQL : 특별한 구조가 없고, 관계가 설정되어 있지 않아서 특정 방식으로 액세스할 필요가 없는 데이터를 저장할 때 적합하다.
  • 확장 방식의 차이
  • SQL : 수직 확장이 가능해 서버에 기능을 추가하며 확장할 수 있다.
  • NoSQL : 수평 확장을 해서 더 많은 서버를 추가하며 확장된다.

데이터베이스 예시

  • SQL 기반 DB
  • Mysql : 소규모 기업과 웹 애플리케이션에서 널리 사용되는 DB. 우리가 아주 흔하게 사용할 수 있다.
  • NoSQL 기반 DB
  • MongoDB : 사용하기 쉬운 매우 인기 있는 NoSQL DB이다. MongoDB는 또한 매우 유연하여 광범위한 데이터 유형을 저장할 수 있습니다. 그들은 빅 데이터를 처리할 수 있습니다.
  • Redis : Redis는 캐싱에 자주 사용되는 인메모리 데이터베이스입니다. Redis는 빠르고 많은 애플리케이션에 사용할 수 있습니다.

'CS 개념 > DB' 카테고리의 다른 글

상향식 모델링 VS 하향식 모델링  (0) 2024.04.11