데이터베이스 관리 시스템(Database Management System, DBMS)은 다수의 사용자들이 데이터베이스내의 데이터를 접근할 수 있도록 해주는 소프트웨어 도구의 집합이다. DBMS은 사용자 또는 다른 프로그램의 요구를 처리하고 적절히 응답하여 데이터를 사용할 수 있도록 해준다.
Relational DataBase Management System의 약자로, 관계형 데이터베이스 관리 시스템을 의마한다.
RDB를 관리하는 시스템이며 RDB는 관계형 데이터 모델을 기초로 두고 모든 데이터를 2차원 테이블 형태로 표현하는 데이터베이스이다.
이러한 관계를 통해 테이블 간 join이 가능하다. 외래키(foreign key)라는 것을 사용한 테이블간에 join이 가능하다.
ACID(Atomicity, Consistency, Isolation, Durability)원칙을 기본으로 구성된 방식이다.
Structured Query Language: SQL
관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다.
관계형 데이터베이스 관리 시스템에서 자료의 검색과 관리, 데이터베이스 스키마 생성과 수정, 데이터베이스 객체 접근 조정 관리를 위해 고안되었다.
Not Only SQL의 약자로, 테이블 간 상호관계가 없는 것이 특징이다. 관계가 없으므로 다른 테이블과 join도 할 수 없다.
RDB 형태의 관계형 데이터베이스가 아닌 다른 형태의 데이터 저장기술이다. RDBMS와는 달리 테이블 간 관계를 정의하지 않는다.
빅데이터의 등장으로 인해 데이터와 트래픽이 기하 급수적으로 증가함에 따라 RDBMS에 단점인 성능을 향상시키기 위해 등장하였다.
데이터 일관성은 포기하되 비용을 고려하여 여러대의 데이터에 분산하여 저장하는 Scale-Out을 목표로 등장하였다.
NoSQL 데이터베이스와 다른 유형의 데이터베이스 간의 주요 차이는 NoSQL 데이터베이스의 경우 보통 구조화되지 않은 스토리지를 사용한다는 점입니다
또 한 가지 중요한 차이점은 NoSQL 데이터베이스가 '샤딩'이라는 프로세스를 거쳐 수평 확장을 한다는 점입니다. 여러 서버에 걸친 데이터 처리를 위해 더 많은 머신을 추가할 수 있다는 뜻이죠
수평 확장성 덕분에 NoSQL 데이터베이스는 엄청나게 많은 양의 데이터를, 심지어 데이터가 계속해서 증가하는 동안에도 더욱 효율적으로 처리할 수 있습니다.
NoSQL 데이터베이스에는 4가지 주요 유형이 있습니다:
키 값은 가장 유연한 NoSQL 데이터베이스 유형입니다. 애플리케이션이 값 필드에 저장된 모든 데이터를 제약 없이 완벽하게 제어할 수 있기 때문이죠.
Redis, AWS DynamoDB, Riak
key-Value에서 확장된 방식으로, Key-Document 형태로 저장. 문서 저장소 또는 문서 지향적 데이터베이스라고도 불리는 이 데이터베이스 유형은 반구조적 데이터의 저장, 검색, 관리에 사용됩니다. 문서에 포함할 필드를 특정할 필요가 없습니다.
MongoDB, Couch DB
SQL
NoSQL
SQL
NoSQL
SQL
NoSQL
데이터베이스 서버의 확장성은 '수직적' 확장과 '수평적' 확장으로 나누어진다.
SQL
NoSQL
https://www.oracle.com/kr/database/nosql/what-is-nosql/
https://superohinsung.tistory.com/110
https://velog.io/@octo__/SQL-vs-NoSQL