본문 바로가기
넓고 얕은 데이터베이스 지식/SQL

DBMS & RDBMS & SQL & NOSQL 3분 요약 정리

by 황원용 2022. 10. 5.
728x90

데이터베이스

  • 데이터를 저장하고 관리하는 곳이다.
  • 구조화된 정보 및 데이터를 체계적으로 관리할 수 있다.

 

 

DBMS(DataBase Management System)

  • 사용자의 요구에 따라 정보 및 데이터를 생성하고 관리해주는 소프트웨어

 

 

SQL(Structured Query Language; 구조화된 쿼리 언어)

  •  데이터베이스 언어로, 주로 관계형 데이터베이스에서 사용한다. 관계형 데이터베이스에서는 테이블의 구조와 데이터 타입 등을 사전에 정의하고, 테이블에 정의된 내용에 알맞은 형태의 데이터만 삽입할 수 있다.

 

 

NoSQL(No Structured Query Language; 비구조화된 쿼리 언어 )

  • 데이터의 구조나 형태가 정해지지 않은 것을 의미한다.
  • 관계형 데이터베이스에서 데이터를 입력할 때는 스키마에 맞게 입력해야 하지만, NoSQL 기반 데이터베이스에서는 스키마에 따라 읽어 온다. 이를 'schema on read'라고 한다.
  • 데이터를 입력하는 방식에 따라 데이터를 읽어올 때 영향을 미친다.

 

 

NoSQL 기반의 비관계형 데이터베이스

  • Key-Value 타입 : 속성을 Key-Value 쌍으로 나타내는 데이터를 배열의 형태로 저장한다.
  • 문서형 데이터베이스 : 데이터를 테이블이 아닌 문서처럼 저장하는 데이터베이스이다.
  • Wide-Column 데이터베이스 : 데이터베이스의 열에 대한 데이터를 집중적으로 관리하는 데이터베이스이다.
  • 그래프 데이터베이스 : 자료구조의 그래프와 비슷한 형식으로 데이터 간의 관계를 구성하는 데이터베이스이다.

 

 

SQL 기반의 데이터베이스와 NoSQL기반의 데이터베이스의 차이점

데이터 저장(Storage)

  • 관계형 데이터베이스는 SQL을 이용해서 데이터를 저장한다.
  • NoSQL은 key-value, 문서, 그래프 등의 방식으로 데이터를 저장한다.

스키마(Schema)

  • SQL을 사용하려면 고정된 형식의 스키마가 필요하다.
    • 처리하려는 데이터 속성별로 열에 대한 정보를 미리 정해두어야 한다는 뜻이다.
  • NoSQL 기반 데이터베이스는 관계형 데이터베이스보다 동적으로 스키마의 형태를 관리할 수 있다.

쿼리(Query)

  • 관계형 데이터베이스는 테이블의 형식과 테이블 간의 관계에 맞춰 데이터를 요청해야 한다. 그래서 정보를 요청할 때 SQL과 같이 구조화된 쿼리 언어를 사용한다.
  • 비관계형 데이터베이스의 쿼리는 데이터 그룹 자체를 조회하는 것에 초점을 둔다.

확장성(Scalability)

  • 일반적으로 SQL 기반의 관계형 데이터베이스는 수직적으로 확장이 가능하다. 데이터베이스가 구축된 하드웨어의 성능을 많이 이용하기 때문에 비용이 많이 들며 복잡하다.
  • NoSQL로 수성된 데이터베이스는 수평적으로 확장한다. 보다 값싼 서버 증설, 클라우드 서비스를 이용하는 확장이다. 관계형에 비해 많은 트래픽을 보다 편리하게 처리할 수 있다.

 

 

728x90

'넓고 얕은 데이터베이스 지식 > SQL' 카테고리의 다른 글

SQL - SELECT 문  (0) 2023.04.23
SQL 구문  (0) 2023.04.23
SQL 소개  (0) 2023.04.23
SQL JOIN 1분 요약 정리  (0) 2023.02.21
관계형 데이터베이스 설계  (0) 2022.10.06