본문 바로가기

FrontEnd

[ DataBase ] RDB, RDBMS, SQL, NOSQL 간단 개념정리

728x90
반응형

데이터베이스 종류인 RDB, RDBMS, SQL, NOSQL에 대한 간단한 개념 정리!!

일단 자세한 설명전에 간단하게 용어들의 관계를 정의하자면 아래와 같습니다.

 

🅐RDB(관계형 데이터베이스)를 🅑RDBMS(데이터베이스를 관리)로 생성하고 수정하고 관리한다.
🅒SQL은 RDBMS를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이고,

🅓NOSQL(비관계형 데이터베이스)는 RDB 형태의 관계형 데이터베이스가 아닌 다른 형태의 데이터 저장방식.

 

RDBMS가 클라이언트/서버 환경에 맞는 데이터 저장기술이라면, NOSQL은 클라우드 환경에 맞는 저장 기술

 

아래에 더 자세한 설명을 정리해두었습니다 : )

 

🅐 RDB  Relational Database

RDB는 관계형 데이터 모델을 기초로 두고 모든 데이터를 2차원 테이블 형태로 표현하는 데이터베이스

구성된 테이블이 다른 테이블들과 관계를 맺고 모여있는 집합체
이러한 관계를 나타내기 위해 외래 키(foreign key)라는 것을 사용
이러한 테이블간의 관계에서 외래 키를 이용한 테이블 간 Join이 가능하다는 게 가장 큰 특징입니다.

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

 

database management system, DBMS

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

 

🅑RDBMS Relational Database Management System

사용자의 요구에 따라 정보를 생성해 관계형 데이터베이스를 생성하고 수정하고 관리할 수 있는 소프트웨어

 

🅒SQL Structured Query Language

데이터베이스 관리 시스템(RDBMS) 의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이며 
관계형 데이터베이스 관리 시스템에서 자료의 검색과 관리, 
데이터베이스 스키마 생성과 수정, 데이터베이스 객체 접근 조정 관리를 위해 고안

SQL의 예시로는 Mysql, Oracle Database, DB2 등

 

 스키마
데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것
스키마 : 데이터베이스 : 테이블 = 평면도 : 집 : 방

 

🅓NoSQL Not Only SQL

SQL을 사용하지 않는 데이터베이스 관리 시스템을 지칭하는 단어

NoSQL이란(Not Only SQL)의 약자로 말 그대로
위에서 설명한 RDB 형태의 관계형 데이터베이스가 아닌 다른 형태의 데이터 저장 

NoSQL의 예시로는 mongoDB, redis  등

NoSQL에서는 RDBMS와는 달리 테이블 간 관계를 정의하지 않음
데이터 테이블은 그냥 하나의 테이블이며 테이블 간의 관계를 정의하지 않아 일반적으로 테이블 간 Join도 불가능

데이터 일관성은 포기하되 비용을 고려하여 여러 대의 데이터에 분산하여 저장하는 Scale-Out을 목표로 등장

 

 

[ SQL, NoSQL 비교 관련 이미지 ]
https://blog.voidmainvoid.net/230

https://www.scylladb.com/resources/nosql-vs-sql/
https://www.scalablepath.com/blog/sql-vs-nosql-when-you-should-use-one-over-the-other/

 

728x90
반응형