ADsP 1과목 | DBMS 구조와 SQL 기초: RDBMS, 스키마, 인덱스, SQL 4대 언어

자동화 창고(WMS) 비유로 이해하는 DBMS와 RDBMS 구조(스키마·인덱스·테이블)

ADsP(데이터분석 준전문가) 제1과목 ‘데이터의 이해’에서는 앞서 살펴본 데이터베이스(DB)를 실제로 관리하고 제어하는 소프트웨어 시스템인 DBMS(데이터베이스 관리 시스템)와 표준 조작 언어인 SQL(Structured Query Language)의 기본 체계를 비중 있게 다룹니다.

데이터 분석 실무에서도 원천 데이터를 추출하고 가공하기 위해 SQL과 RDBMS 구조를 파악하는 것은 필수적인 기초 역량입니다.

쏠티북스의 『선넘는 ADsP』 교재를 바탕으로, 비전공자도 한눈에 이해할 수 있도록 스마트 자동화 창고 관리 시스템(WMS)에 빗대어 DBMS 유형, 관계형 데이터베이스(RDBMS)의 구조(테이블·속성·튜플), 스키마와 인덱스, 그리고 SQL 4대 언어 체계(DDL·DML·DCL·TCL)를 차근차근 정리해 보겠습니다. 1과목 전체 학습 순서는 ADsP 1과목 독학 지도에서 확인할 수 있습니다.

1. DBMS란 무엇인가: 자동화 물류 창고 관리 시스템(WMS)

DBMS(Database Management System, 데이터베이스 관리 시스템)는 다수의 사용자가 데이터베이스 내의 데이터에 접근하여 안전하게 저장, 검색, 수정, 관리할 수 있도록 지원하는 소프트웨어 프로그램입니다.

복잡한 공장 현장에서 수만 가지 부품을 수작업으로 관리하면 누락이나 충돌이 발생하듯, 데이터 역시 전용 관리 소프트웨어(DBMS)가 중앙에서 통제해야 일관성과 무결성을 유지할 수 있습니다.

이를 스마트 팩토리의 자동화 창고 관리 시스템(WMS)으로 비유하면 다음과 같습니다.

  • 데이터베이스 (DB): 수많은 부품과 자재가 보관된 ‘물리적 자동화 창고 건물’
  • DBMS: 창고 크레인, 보관 선반, 센서, 입출고 로봇을 총괄 제어하는 ‘창고 중앙 제어 소프트웨어(WMS)’
  • SQL: 작업자가 WMS 소프트웨어에 “1번 선반에서 A부품 10개를 꺼내라”고 지시하는 ‘표준 크레인 제어 명령 체계’
자동화 창고(WMS) 비유로 이해하는 DBMS와 RDBMS 구조(스키마·인덱스·테이블)

2. DBMS의 발전 유형과 관계형 데이터베이스(RDBMS)

DBMS는 데이터 간의 관계를 표현하는 방식에 따라 여러 형태로 발전해 왔습니다. 현재 기업 실무와 시험에서 가장 핵심이 되는 것은 관계형 DBMS(RDBMS)입니다.

(1) DBMS의 주요 유형

유형데이터 구조 및 특징공장 비유대표 제품 및 사례
계층형 DBMS트리(Tree) 구조로 상하 종속 관계 표현 (1:N 관계만 지원)본사 → 사업부 → 생산라인 형태의 엄격한 상명하복 조직도초창기 레거시 시스템
네트워크형 DBMS그래프(Graph) 구조로 복잡한 망 형태 표현 (N:M 관계 지원)그물망처럼 얽힌 공장 간 직결 물류 파이프라인IDMS 등
관계형 DBMS (RDBMS)2차원 표(테이블) 형태로 저장하고 공통 열(Key)로 관계 연결표준 규격 철제 랙 선반에 격자형으로 정돈된 자재 보관소Oracle, MySQL, PostgreSQL, SQL Server
NoSQL DBMS비정형·대용량 데이터를 유연하게 저장하는 비관계형 시스템비규격 부품을 자유롭게 담는 가변형 벌크 컨테이너MongoDB, Redis, Cassandra

(2) 관계형 데이터베이스(RDBMS)의 3대 핵심 구성요소

RDBMS는 데이터를 2차원 표(Table) 형태로 다룹니다. 행과 열을 가리키는 정확한 용어를 구별해야 합니다.

  • 테이블 (Table / Relation): 행과 열로 구성된 2차원 데이터 집합 단위 (공장 자재 보관 랙)
  • 속성 (Attribute / Column): 테이블의 열(세로줄)에 해당하며, 저장할 데이터의 항목과 성격을 정의 (부품코드, 부품명, 단가 등 라벨 항목)
  • 튜플 (Tuple / Row / Record): 테이블의 행(가로줄)에 해당하며, 속성들의 실제 값으로 이루어진 하나의 독립된 개체 데이터 (실제 입고된 부품 1개의 전체 정보 행)

3. 스키마와 인덱스: 창고 설계도와 색인표

데이터베이스의 구조적 안정성과 처리 성능을 높이기 위해 사용하는 필수 개념입니다.

SQL 4대 언어 체계(DDL·DML·DCL·TCL) 분류 도식
핵심 개념학술적 정의 및 역할WMS 자동화 창고 비유
스키마 (Schema)데이터베이스에 저장되는 데이터의 구조, 형식, 제약조건을 정의한 전체 설계도창고 선반의 가로·세로 규격, 최대 허용 하중, 보관 규칙을 규정한 ‘창고 표준 시공 설계도’
인덱스 (Index)데이터 검색 속도를 대폭 향상시키기 위해 특정 열을 기준으로 정렬해 둔 보조 색인 구조수만 개 부품 중 원하는 자재를 1초 만에 찾기 위해 랙 기둥마다 붙여둔 ‘부품 위치 빠른 색인표’
인스턴스 (Instance)특정 시점에 스키마에 따라 실제로 데이터베이스에 저장되어 있는 실제 데이터 값들의 상태현재 시각 창고 선반 위에 실제로 적재되어 있는 ‘실물 부품 재고 현황’

4. SQL 4대 언어 체계 (DDL, DML, DCL, TCL)

SQL(Structured Query Language)은 RDBMS와 대화하기 위한 표준 데이터 제어 언어로, 수행하는 목적과 기능에 따라 4가지 언어군으로 분류됩니다.

언어 구분기능 및 역할핵심 명령어WMS 창고 제어 비유
DDL (데이터 정의어)
Data Definition Language
테이블이나 데이터베이스 구조를 생성, 수정, 삭제하는 명령 (구조 자체를 다룸)`CREATE` (생성)
`ALTER` (구조 변경)
`DROP` (완전 삭제)
`TRUNCATE` (내용 비우기)
창고에 새로운 철제 선반 랙을 설치하거나 철거·개조하는 작업
DML (데이터 조작어)
Data Manipulation Language
테이블 안의 실제 데이터를 조회, 삽입, 수정, 삭제하는 명령 (사용자가 가장 많이 씀)`SELECT` (조회/검색)
`INSERT` (신규 적재)
`UPDATE` (정보 갱신)
`DELETE` (데이터 삭제)
선반 랙에 실제 부품 상자를 넣거나 빼고, 수량을 바꾸는 작업
DCL (데이터 제어어)
Data Control Language
데이터 접근 보안 권한을 부여하거나 회수하는 관리자 명령`GRANT` (권한 부여)
`REVOKE` (권한 박탈)
특정 작업자에게 1급 위험물 자재실 출입 카드키를 발급하거나 회수함
TCL (트랜잭션 제어어)
Transaction Control Language
DML 작업의 논리적 실행 단위(트랜잭션)를 최종 반영하거나 취소`COMMIT` (작업 영구 저장)
`ROLLBACK` (작업 원상 복구)
`SAVEPOINT` (복구 지점 설정)
입출고 작업을 전산에 최종 승인 확정하거나, 오류 시 작업 전으로 되돌림

5. 시험에서는 이렇게 출제됩니다

ADsP 제1과목 객관식에서 DBMS와 SQL 파트는 개념 매칭 문제로 단골 출제됩니다.

  • 스키마 vs 인덱스 빈칸 채우기
  • “데이터의 구조와 제약조건을 정의한 설계도” → 스키마(Schema)
  • “검색 속도를 향상시키기 위한 보조 데이터 구조” → 인덱스(Index)
  • SQL 명령어 분류 (DDL vs DML vs DCL)
  • `CREATE`, `ALTER`, `DROP`을 제시하고 언어 유형을 묻는다면 DDL(데이터 정의어)을 선택해야 합니다.
  • `SELECT`, `INSERT`, `UPDATE`, `DELETE`는 DML(데이터 조작어)로 분류합니다.
  • 테이블 구조 용어: 세로 열을 의미하는 것은 속성(Attribute/Column), 가로 행을 의미하는 것은 튜플(Tuple/Row)임을 헷갈리지 않아야 합니다.

6. 옆 개념과의 연결

05편에서 배운 데이터베이스 설계 절차가 ‘논리적 설계’ 단계에 도달하면 테이블과 스키마가 정의됩니다. 이렇게 RDBMS로 관리되는 단기 운영 데이터(OLTP)가 기업의 장기 분석(OLAP)을 위해 대규모 분석 창고로 통합되는 발전 과정은 다음 편인 07편 기업 내부 DB와 DW(데이터웨어하우스)·DL(데이터레이크)에서 다룹니다.

자주 묻는 질문(FAQ)

Q1. DDL 명령어인 DROP과 TRUNCATE, DML의 DELETE는 어떻게 다른가요?

A. `DROP`은 테이블 구조(선반 랙) 자체를 완전히 삭제하는 DDL입니다. `TRUNCATE`는 선반 구조는 남기고 안의 데이터만 초기화하는 DDL이며, `DELETE`는 조건에 맞는 특정 행(부품 상자)만 골라서 지우는 DML입니다.

Q2. 스키마(Schema)와 인스턴스(Instance)의 차이는 무엇인가요?

A. 스키마는 데이터베이스의 틀과 구조를 정해놓은 ‘설계 도면’이고, 인스턴스는 그 도면에 맞춰 특정 시점에 실제로 채워져 있는 ‘실제 데이터 상태’를 의미합니다.

Q3. NoSQL은 RDBMS를 완전히 대체하는 기술인가요?

A. 아닙니다. RDBMS는 정형 데이터의 엄격한 일관성과 트랜잭션 처리에 강점이 있고, NoSQL은 대용량 비정형 데이터의 유연한 확장성과 빠른 분산 처리에 강점이 있어 상호보완적으로 함께 사용됩니다.

마무리

06편에서는 자동화 창고 시스템(WMS) 비유를 통해 DBMS의 유형, RDBMS의 테이블 구조(속성·튜플), 스키마와 인덱스의 개념, 그리고 SQL의 4대 언어군(DDL·DML·DCL·TCL)을 체계적으로 정리했습니다.

다음 07편에서는 기업들이 이러한 데이터베이스를 실시간 거래와 전사 분석으로 나누어 운영하는 기업 내부 DB와 데이터웨어하우스(DW)·데이터레이크(DL)를 이어가겠습니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤