[CS] 데이터베이스의 종류

현톨·2023년 2월 14일
0

CS

목록 보기
3/6

관계형 데이터베이스 (RDBMS)

행과 열을 가지는 표 형식 데이터를 저장하는 데이터베이스 SQL을 통해 조작한다.

관계형 데이터베이스들은 모두 SQL은 사용하지만 각 제품 특성에 맞게 조금씩 다르다.

MySQL

대부분의 운영체제와 호환되며, 가장 많이 사용되는 데이터베이스이다.
C, C++로 만들어졌으며 대용량 데이터베이스를 위해 설계되었다.
롤백, 커밋, 이중 암호 보안 등의 기능을 제공한다.

스토리지엔진... 중요한가??

PostgreSQL

MySQL 다음으로 개발자들이 선호하는 데이터베이스이다.
최대 테이블 크기는 32TB이며 SQL 뿐만 아니라 JSON을 이용해 데이터에 접근할 수 있다.
지정 시간에 복구하는 기능, 로깅, 접근 제어, 중첩된 트랜잭션, 백업 등을 할 수 있다.

NoSQL 데이터베이스

Not Only SQL이라는 슬로건에서 생겨난 데이터베이스로, 말 그대로 SQL을 사용하지 않는 데이터베이스를 뜻한다.

mongoDB

JSON을 통해 접근할 수 있고, binary JSON (BSON) 형태로 데이터가 저장되며, 와이드타이거 엔진이 장착되었다.
키-값 데이터 모델에서 확장된 도큐먼트 기반의 데이터베이스이다.

확장성이 뛰어나며 빅데이터를 저장할 때 성능이 좋고, 고가용성과 샤딩, 레플리카셋을 지원한다.

또한 스키마를 정해놓지 않고 데이터 삽입이 가능하여(key-value라서) 다양한 다양한 도메인의 데이터베이스를 기반으로 분석하거나 로깅을 구현할 때 강점을 가진다.

또한 도큐먼트를 생성할 때 마다 유니크한 값의 ObjectID가 생성된다.

redis

인메모리 형식의 키-값 기반 데이터베이스이다.

기본적인 데이터 타입은 문자열이며 최대 512MB까지 저장할 수 있다.
이외에도 set, hash 등을 지원한다. (stream 시계열 데이터도 지원함)

pub/sub 기능을 통한 채팅시스템, 캐싱, 대기열, sorted set을 통한 실시간 순위 등에 사용할 수 있다.

profile
기록하는 습관 들이기

0개의 댓글