데이터베이스 응용 기술

데이터베이스 응용 기술

1. 객체지향 데이터베이스

등장 배경

관계 데이터베이스의 한계:

  • SQL 표현력 제한
  • 복잡한 데이터 구조 표현 어려움
  • CAD/CAM/CASE 등 특수 분야 부적합

객체지향 데이터 모델

객체지향 개념을 기반으로 한 데이터 모델

핵심 개념

개념설명
객체현실 세계의 개체 표현
OID객체 식별자 (유일)
속성객체의 상태
메서드객체의 동작
클래스유사 객체의 그룹
상속속성/메서드 물려받기

객체와 OID

┌─────────────────┐
│     객체        │
├─────────────────┤
│ OID: 고유 식별자 │
├─────────────────┤
│ 속성들          │
│ - 이름          │
│ - 나이          │
├─────────────────┤
│ 메서드들        │
│ - getName()    │
│ - setAge()     │
└─────────────────┘
  • OID로 객체 간 참조
  • 메시지로 객체에 접근

클래스 계층과 상속

      [Person]
         │
    IS-A 관계
         │
    ┌────┴────┐
    ▼         ▼
[Student] [Employee]
    │
    ▼
[Graduate]

상속 유형

유형설명
단일 상속하나의 상위 클래스
다중 상속여러 상위 클래스

복합 객체

다른 객체를 참조하는 객체

  • Is-Part-Of 관계 표현
  • 속성 값으로 다른 객체의 OID 저장
[자동차] ─────┬─────► [엔진]
             ├─────► [바퀴]
             └─────► [핸들]
         Is-Part-Of

객체지향 질의

구분관계 DB객체지향 DB
대상릴레이션클래스
결과릴레이션객체 집합

한계: 표준화된 질의어 부재


2. 객체관계 데이터베이스

개념

관계 DB + 객체지향 개념

지원 기능

  • 릴레이션
  • 객체, 메서드
  • 클래스, 상속
  • 캡슐화
  • 사용자 정의 타입

객체지향 DB vs 객체관계 DB

구분객체지향 DB객체관계 DB
기반OOP 개념관계 DB
목적DB 기능 추가타입 확장
표준미흡SQL3

SQL3 (1999~)

  • 객체지향 개념 지원
  • 사용자 정의 타입
  • 객체 식별자
  • 메서드 정의

3. 분산 데이터베이스 시스템

개념

물리적으로 분산된 DB를 논리적으로 하나처럼 사용

┌─────────────────────────────┐
│     논리적: 하나의 DB        │
├─────────────────────────────┤
│                             │
│  ┌─────┐     ┌─────┐       │
│  │지역A│◄───►│지역B│       │
│  │ DB  │     │ DB  │       │
│  └──┬──┘     └──┬──┘       │
│     │  네트워크  │           │
│     └─────┬─────┘           │
│           ▼                 │
│       ┌─────┐               │
│       │지역C│               │
│       │ DB  │               │
│       └─────┘               │
│                             │
│     물리적: 분산된 DB        │
└─────────────────────────────┘

구성 요소

구성설명
분산 처리기지역 컴퓨터 + DBMS
분산 DB지역별 데이터베이스
네트워크통신망 연결

분산 투명성

분산되어 있음을 사용자가 인식 못함

5가지 투명성

투명성의미
위치저장 위치 몰라도 접근
중복중복 저장 인식 불필요
단편화분할 저장 인식 불필요
병행동시 수행해도 일관성 유지
장애일부 장애에도 계속 작동

데이터 중복

완전 중복: 전체 데이터 복제 부분 중복: 일부만 복제 분할: 중복 없이 분할

장점단점
신뢰성/가용성 향상저장 공간 증가
병렬 처리 가능변경 비용 증가
부하 분산불일치 위험

단편화

릴레이션을 작은 조각으로 분할

조건

  • 완전성: 모든 데이터 포함
  • 회복성: 원본 복구 가능
  • 분리성: 조각 간 중복 없음

유형

유형분할 단위
수평적투플(행) 단위
수직적속성(열) 단위
혼합둘 다 사용

분산 DB 스키마

전역 개념 스키마
      │
      ▼
단편화 스키마 (논리적 분할)
      │
      ▼
할당 스키마 (물리적 배치)
      │
      ▼
지역 스키마 (각 지역 구조)

장단점

장점

  • 신뢰성/가용성 증대
  • 지역 자치성
  • 확장 용이

단점

  • 설계/구축 비용 증가
  • 관리 복잡
  • 통신 비용 발생

4. 멀티미디어 데이터베이스

멀티미디어 데이터

유형예시
텍스트문서, 문자
그래픽벡터 이미지
이미지사진, 비트맵
비디오동영상
오디오음성, 음악

특성

대용량

  • 수 KB ~ 수십 MB 이상
  • 압축 저장 필요

복잡한 검색

방식설명
설명 기반키워드/설명으로 검색
내용 기반실제 내용으로 검색

복잡한 구조

┌───────────────────┐
│ 멀티미디어 데이터   │
├───────────────────┤
│ 원시 데이터        │
│ (텍스트, 이미지 등) │
├───────────────────┤
│ 등록 데이터        │
│ (처리용 메타정보)   │
├───────────────────┤
│ 서술 데이터        │
│ (검색용 키워드)     │
└───────────────────┘

구현 방식

방식특징
파일 시스템직접 관리, 개발 어려움
관계 DB + 파일SQL + 파일 처리 병행
확장 관계 DBBLOB 타입 지원
객체지향 DB추상화/상속 지원

BLOB

Binary Large Object

  • 대용량 이진 데이터 저장
  • 이미지, 비디오 등

질의 처리 기법

기법설명
매칭유사도 계산
랭킹관련성 순 정렬
필터링단계적 범위 축소
인덱스인덱스 활용 검색

5. 웹 데이터베이스

개념

웹 서비스 + DB 통합

┌─────────┐
│ 브라우저 │
└────┬────┘
     │ HTTP
     ▼
┌─────────┐
│ 웹 서버  │
└────┬────┘
     │
     ▼
┌─────────────┐
│ 미들웨어     │
│ (DB Gateway)│
└────┬────────┘
     │ SQL
     ▼
┌─────────┐
│  DBMS   │
└─────────┘

미들웨어

웹 서버와 DB 연결

방식위치
서버 확장웹 서버 측 (주로 사용)
클라이언트 확장브라우저 측

6. 데이터 웨어하우스

개념

의사 결정 지원용 읽기 전용 DB

┌──────────┐ ┌──────────┐
│ 운영 DB 1 │ │ 운영 DB 2 │
└────┬─────┘ └────┬─────┘
     │   추출     │
     └─────┬─────┘
           ▼
     ┌───────────┐
     │ 변환/통합  │
     └─────┬─────┘
           ▼
┌─────────────────┐
│ 데이터 웨어하우스 │
│   (읽기 전용)    │
└────────┬────────┘
         │
    ┌────┴────┐
    ▼         ▼
 [분석]    [리포트]

일반 DB vs 웨어하우스

구분일반 DB웨어하우스
목적업무 처리의사 결정
작업CRUD읽기 전용
데이터최신만과거+현재
사용자업무 담당자경영진/분석가

4가지 특징

주제 지향적

  • 의사 결정 주제 중심
  • 이해하기 쉬운 형태

통합성

  • 여러 DB에서 추출
  • 일관된 형태로 통합

시간 변이성

  • 과거 + 현재 데이터
  • 스냅샷 유지

비소멸성

  • 읽기 전용
  • 트랜잭션 변경 없음

요약

데이터베이스 유형

유형핵심
객체지향 DB객체/클래스/상속
객체관계 DB관계 DB + 객체
분산 DB물리 분산, 논리 통합
멀티미디어 DB대용량 미디어
웹 DB웹 + DB 통합
웨어하우스의사결정 지원

분산 DB 투명성

위치 - 저장 위치 몰라도 됨
중복 - 복제 인식 불필요
단편화 - 분할 인식 불필요
병행 - 동시 처리 일관성
장애 - 부분 장애에도 작동

데이터 웨어하우스 특징

주제 지향 - 의사결정 중심
통합 - 여러 소스 통합
시간 변이 - 과거+현재
비소멸 - 읽기 전용