SQL vs NoSQL

SEOKWOO LEE·2022년 10월 26일
0

SQL

SQL(Structured Query Language)는 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다. 관계형 데이터베이스 관리 시스템에서 자료의 검색과 관리, 데이터베이스 스키마 생성과 수정, 데이터베이스 객체 접근 조정 관리를 위해 고안되었다. 많은 수의 데이터베이스 관련 프로그램들이 SQL을 표준으로 채택하고 있다. -Wikipedia

SQL은 관계형 데이터 베이스에서 데이터를 CRUD 할 수 있다.
SQL은 정해진 스키마에 데이터가 저장된다.
스키마에 없는 항목은 테이블에 추가할 수 없다.
중복 제거를 위해 테이블마다 관계를 가진다.

대표적인 SQL은 MySQL이다.


NoSQL

NoSQL(non SQL 또는 non relational) 데이터베이스는 전통적인 관계형 데이터베이스 보다 덜 제한적인 일관성 모델을 이용하는 데이터의 저장 및 검색을 위한 매커니즘을 제공한다. 이러한 접근에 대한 동기에는 디자인의 단순화, 수평적 확장성, 세세한 통제를 포함한다. NoSQL 데이터베이스는 단순 검색 및 추가 작업을 위한 매우 최적화된 키 값 저장 공간으로, 레이턴시와 스루풋과 관련하여 상당한 성능 이익을 내는 것이 목적이다. NoSQL 데이터베이스는 빅데이터와 실시간 웹 애플리케이션의 상업적 이용에 널리 쓰인다. 또, NoSQL 시스템은 SQL 계열 쿼리 언어를 사용할 수 있다는 사실을 강조한다는 면에서 "Not only SQL"로 불리기도 한다. -Wikipedia

SQL과 달리 스키마와 테이블간 관계가 없다.
스키마가 없기에 같은 테이블에 다른 구조의 데이터를 추가할 수 있다.
SQL보다 유연하지만 데이터 중복을 처리하는데 어려움이 있을 수 있다.

대표적인 NoSQl은 MongoDB이다.

profile
내가 보기위해 만든 나만의 공부 노트

0개의 댓글

관련 채용 정보