CS/데이터베이스

[데이터베이스]DBMS, RDBMS, SQL, NoSQL 용어 정리

Heeyeon Choi 2024. 11. 1. 23:01
728x90

1. DBMS (Database Management System)

  • 개념: 데이터베이스 관리 시스템(DBMS)은 데이터베이스를 생성, 관리, 조작할 수 있도록 하는 소프트웨어입니다.
  • 주요 기능: 데이터를 저장, 검색, 수정, 삭제하고 데이터 무결성과 보안을 유지합니다.
  • 예시: MySQL, PostgreSQL, Oracle, MongoDB, SQLite 등.
  • 특징:
    • 데이터의 효율적인 관리와 데이터 무결성을 유지하며, 동시성 제어와 백업 기능을 제공합니다.
    • 데이터 중복을 줄이고, 데이터의 일관성을 보장하여 애플리케이션 성능을 최적화합니다.

2. RDBMS (Relational Database Management System)

  • 개념: 관계형 데이터베이스 관리 시스템(RDBMS)은 관계형 모델을 기반으로 데이터 간의 관계를 테이블 형태로 관리하는 DBMS입니다.
  • 주요 특징:
    • 테이블 구조: 데이터를 행(Row)과 열(Column)로 구성된 테이블에 저장합니다.
    • SQL 사용: 데이터를 정의, 조회, 조작하는 데 SQL(Structured Query Language)을 사용합니다.
    • 관계 설정: 테이블 간의 관계를 설정하여 중복 데이터를 줄이고 데이터 일관성을 높입니다.
    • ACID 지원: 원자성(Atomicity), 일관성(Consistency), 격리성(Isolation), 지속성(Durability)이라는 트랜잭션 특성을 보장하여 데이터 무결성을 유지합니다.
  • 예시: MySQL, PostgreSQL, Oracle, Microsoft SQL Server 등.

3. SQL (Structured Query Language)

  • 개념: SQL은 관계형 데이터베이스에서 데이터를 정의, 관리, 조작하기 위한 표준 언어입니다.
  • 주요 기능:
    • DDL (Data Definition Language): 데이터베이스 구조를 정의하는 명령어 (CREATE, ALTER, DROP 등).
    • DML (Data Manipulation Language): 데이터베이스 데이터를 조회, 추가, 수정, 삭제하는 명령어 (SELECT, INSERT, UPDATE, DELETE 등).
    • DCL (Data Control Language): 사용자 권한을 관리하고 접근을 제어하는 명령어 (GRANT, REVOKE 등).
  • 특징:
    • 직관적이고 강력한 쿼리: SQL은 데이터 검색, 집계, 필터링을 직관적이고 간단하게 표현할 수 있습니다.
    • 표준화된 언어: 대부분의 RDBMS가 SQL을 지원하며, SQL 표준을 따릅니다.

4. NoSQL (Not Only SQL)

  • 개념: NoSQL은 비관계형 데이터베이스로, 관계형 모델을 사용하지 않고, 데이터를 다양한 구조로 관리하는 DBMS입니다.
  • 주요 특징:
    • 유연한 데이터 모델: 테이블, 행, 열 구조가 아닌 유연한 데이터 모델을 지원합니다. 문서(Document), 키-값(Key-Value), 열(Column), 그래프(Graph) 등 여러 데이터 모델을 사용할 수 있습니다.
    • 스키마리스(Schema-less): 사전에 정의된 스키마가 없어 데이터를 유연하게 추가 및 수정할 수 있습니다.
    • 수평적 확장: 분산 아키텍처를 통해 수평적으로 확장할 수 있어, 대량의 데이터를 처리하는 데 용이합니다.
    • ACID 대신 CAP 이론: 일부 NoSQL 데이터베이스는 데이터 일관성 대신 가용성이나 파티션 허용성을 중시하며, CAP 이론(일관성, 가용성, 파티션 허용성)을 따릅니다.
  • 예시:
    • 문서 기반: MongoDB, Couchbase
    • 키-값 저장소: Redis, DynamoDB
    • 열 기반: Cassandra, HBase
    • 그래프 데이터베이스: Neo4j

요약

용어개념예시

DBMS 데이터베이스를 관리하는 소프트웨어로, 데이터의 저장, 관리, 무결성 유지 MySQL, MongoDB, Oracle
RDBMS 관계형 모델을 기반으로 테이블 형태로 데이터를 관리하는 DBMS MySQL, PostgreSQL, SQL Server
SQL RDBMS에서 데이터를 정의하고 조작하기 위한 표준 언어 SELECT, INSERT, UPDATE
NoSQL 비관계형 데이터베이스로, 다양한 데이터 모델과 유연한 스키마를 제공 MongoDB, Redis, Cassandra
  • DBMS는 데이터베이스 관리 시스템의 총칭이며, RDBMS는 관계형 데이터베이스 관리 시스템의 한 유형입니다.
  • SQL은 주로 RDBMS에서 사용되며, 데이터 조작을 위한 표준 언어입니다.
  • NoSQL은 관계형이 아닌 비정형, 반정형 데이터를 처리할 때 유리하며, 다양한 데이터 모델과 유연한 확장성을 제공합니다.DBMS, RDBMS, SQL, NoSQL 용어 정리
728x90