- RDBMS(관계형 DBMS): MySQL, MariaDB, SQLite 등
- 행과 열의 집합인 테이블 형식으로 데이터를 저장
- 관계연산자는 SQL라는 쿼리 언어를 사용하고, 쿼리를 통해 테이블 형식의 데이터를 조작
- SQL
- DDL: 데이터를 정의(create, alter, drop 등)
- DML: 데이터를 조작(select, insert, update, delete 등)
- DCL: DB의 접근 권한 등의 설정(grant, revoke 등)
- Non-RDBMS: MongoDB, Redis 등
- 테이블 형식이 아닌 키-값 형태로 값을 저장
- MongoDB
- MongoDB는 JSON 형태인 도큐먼트(Document)를 저장하며, 다음과 같은 특징을 갖고 있다.
- 스키마를 따로 정의하지 않아 각 **컬렉션(Collection, RDBMS의 테이블과 비슷)**에 대한 정의가 필요하지 않다
- JSON 형식으로 쿼리를 작성할 수 있다
- _id 필드가 Primary Key 역할을 한다
- 연산자
- comparison: $eq, $in, $ne, $nin
- Logical: $and, $not, $nor, $or
- Element: $exists, $type
- Evaluation: $expr, $regex, $text
- Redis
- 다른 데이터베이스와 다르게 메모리 기반의 DBMS
- GET, SET, DEL, INFO 등의 명령
- 명령어 공식 문서: https://redis.io/docs/latest/commands/
- CouchDB
- MongoDB와 같이 JSON 형태인 Document를 저장, 웹 기반의 DBM, REST API 형식으로 요청을 처리
- REST API: 웹 서비스를 설계하는 아키텍처 스타일 중 하나로, HTTP 프로토콜을 사용하여 리소스에 접근하고 조작하는 방식
- POST, GET, PUT, DELETE 등의 명령
- 명령어 공식 문서: https://docs.couchdb.org/en/latest/api/index.html