[DB] DataBase

배창민·2025년 8월 18일
post-thumbnail

Database 정리

1. Data와 정보

  • Data: 관찰의 결과로 나타난 실제 값
    예) 에베레스트의 높이: 8848m
  • Information: 데이터에 의미를 부여한 것
    예) 에베레스트는 세계에서 가장 높은 산이다.

2. Database

  • 정의: 여러 응용 시스템이 공용할 수 있도록 논리적으로 연관된 데이터를 모아 중복을 최소화해 구조적으로 저장한 집합.

  • 특징

    1. 실시간 접근성: 요청 시 즉시 서비스
    2. 계속적인 변화: 시간에 따라 데이터 값이 변함
    3. 동시 공유: 여러 사용자/업무가 동시에 사용
    4. 내용 기반 참조: 물리적 위치가 아닌 데이터 값 기준으로 접근

3. DBMS (Database Management System)

  • 정의: 데이터 추출, 조작, 정의, 제어 등을 지원하는 데이터베이스 관리 프로그램

  • 주요 기능

    • 데이터 추출: select
    • 데이터 조작: insert, update, delete
    • 데이터 정의: create table
    • 데이터 제어: 백업, 회복, 동시성 제어
  • 이점

    • 데이터 중복 최소화
    • SQL 지원으로 복잡한 검색/분석 용이
    • 무결성 보장, 백업·복구 지원
    • 표준화된 관리로 유지보수 용이
  • 종류

    • SQL Server (MS) – 윈도우 기반
    • Oracle – 대용량 DB
    • MySQL / MariaDB – 소용량 DB, 오픈소스
    • DB2 (IBM) – 대용량 DB
    • SQLite – 모바일 전용

4. Database 변천 과정

  • 파일 시스템 → 단순 저장, 관리 기능 부족
  • 계층 모델 → 트리 구조, 부모-자식 관계
  • 네트워크 모델 → 그래프 구조, 다대다 관계 표현
  • 관계형 모델 (RDBMS) → 테이블 구조, SQL 사용
  • 객체 모델 (ODBMS) → 객체 지향 개념 적용
  • 객체-관계 모델 (ORDBMS) → 관계형 + 객체 지향 혼합

5. Database 유형

(1) 계층형 DB

  • 구조: 트리 구조, 부모-자식 관계
  • 장점: 직관적, 접근 속도 빠름
  • 단점: M\:N 관계 표현 어려움, 구조 변경 어려움

(2) 네트워크형 DB

  • 구조: 그래프 구조, 여러 부모-자식 관계 가능
  • 장점: 복잡한 관계 표현 가능, 무결성 유지 용이
  • 단점: 구조 복잡, 관리 어려움

(3) 관계형 DB (RDBMS)

  • 구조: 테이블(행과 열) 기반, 키로 관계 정의

  • 특징: SQL 사용, 데이터 정규화, ACID 보장

    • Atomicity: 원자성
    • Consistency: 일관성
    • Isolation: 고립성
    • Durability: 지속성
  • 장점: 무결성 유지, 강력한 쿼리 기능

  • 단점: 복잡한 객체 관계 표현 한계, 스키마 변경 어려움

(4) 객체-관계형 DB (ORDBMS)

  • 정의: 관계형 + 객체 지향 기능 결합
  • 장점: 복잡한 데이터 타입, 상속, 다형성 지원
  • 단점: 구현 복잡, 일반 업무에는 과한 경우 존재

오늘 배운 점 & 느낀 점

데이터와 정보의 차이부터 데이터베이스의 정의, 그리고 DBMS의 기능과 종류까지 다시 정리하면서 기본 개념을 다시 되짚을 수 있었다.
하지만 외울 내용이 많아서 예전에 배웠어도 헷갈리는 부분들이 많아서 아직 부족하다 느꼈다.
그래도 이번에 정리하면서 개념을 다시 확인할 수 있었고, 앞으로 공부하면서 기초가 흔들리지 않게 하는 데 도움이 될 것 같다.

profile
개발자 희망자

0개의 댓글