Tech

Diary

Lecture

About Me

개발중

DB용어 및 개념정리

JeongSeulho

2025년 01월 01일

준비중...
클립보드로 복사

DB관련 용어 정리

DB(Database)

  • 전자적으로 저장되고 사용되는 관련있는 데이터들의 조직화된 집합

DBMS(Database Management System)

  • 사용자에게 DB를 정의하고 만들고 관리하는 기능을 제공하는 소프트웨어 시스템
  • PostgreSQL, MySQL, MariaDB, Oracle, MS-SQL 등

metadata(catalog)

  • DB를 정의하거나 기술하는 data
  • 데이터 유형, 구조, 제약 조건, 보안, 인덱스 등
  • metadata 또한 DBMS를 통하여 저장/관리

DB system

  • DB, DBMS, 연관된 application 등을 포함하는 전체 시스템

Image

data models

- DB의 구조를 기술하는데 사용하는 개념들

  • DB 구조를 추상화해서 표현할 수 있도록 함
  • data models는 크게 3가지로 분류

conceptual data models

  • 비개발자가 이해할 수 있는 개념의 모델
  • 가장 높은 추상화 수준
  • 비즈니스 요구사항 추상화에 사용
  • entity-relationship data models 등

Image

logical data models

  • 특정 DBMS에 종속되지 않는 수준의 모델
  • 중간 추상화 수준
  • relational data models, object data models, object-relational data models 등

Image

physical data models

  • 실제 데이터가 컴퓨터에 어떻게 파일 형태로 저장되는지 기술하는 모델

DB schema

  • data model을 바탕으로 DB의 구조를 기술한 것

DB state(snapshot)

  • 특정 시점에서의 DB의 상태를 기술한 것

three-schema architecture

  • DB system을 기술하는 아키텍처 중 하나
  • user app으로 부터 물리적인 DB를 분리시키는 목적
  • 3가지 레벨이 있으면 각 레벨에 schema가 있음

Image

schema 정의를 위한 언어

DDL(Data Definition Language)

  • conceptual schema를 정의하는데 사용

SDL(Schema Definition Language)

  • internal schema를 정의하는데 사용

VDL(View Definition Language)

  • external schema를 정의하는데 사용

DML(Data Manipulation Language)

  • 데이터를 조작하는데 사용
  • 데이터 추가, 삭제, 수정, 조회 등

SQL(Structured Query Language)

  • 최근 DBMS는 위의 모든 언어를 통합한 언어로 사용 => SQL