Week 1 - 데이터베이스 아키텍처

1. 내용 요약

  • 주요 내용:
      1. 데이터베이스 시스템 개요
      1. 데이터 모델
      1. 데이터베이스 인터페이스
      1. DBMS 구성 모듈
      1. 데이터베이스 아키텍처

2. 데이터베이스 시스템 개요

2.1 데이터 모델

  • 데이터 모델: 실세계 데이터를 어떤 구조로 저장하고 어떤 연산으로 관리할 것인지 정의.
  • 관계형 모델: 이 강의에서 가정하는 모델로, 테이블 구조를 기반으로 데이터를 관리함.
notion image

2.2 외부 모델 (뷰)

  • 외부 모델: 각 사용자가 필요로 하는 데이터를 일부만 제공하는 뷰를 의미함. 예시: 인사과 직원은 인사 관련 테이블(인사-뷰)을 사용, 자재과 직원은 자재 관련 테이블(자재-뷰)을 사용함.

2.3 개념 모델

  • 개념 모델: 데이터베이스 내의 전체 테이블 집합을 의미하며, 외부 모델을 내부 모델로 매핑함.

2.4 내부 모델

  • 내부 모델: 디스크 저장 구조와 접근 경로를 명시함.
    • 예: 특정 테이블이 디스크의 특정 위치에 저장됨.
notion image
notion image

3. 데이터 독립성

3.1 데이터 독립성의 정의

  • 데이터 독립성: 상위 스키마(외부/개념 모델)가 변하지 않고 하위 스키마(내부 모델)를 변경할 수 있는 성질. 이는 사용자의 뷰에 영향을 주지 않으며, 응용 프로그램의 안정성을 보장함.

4. 데이터베이스 언어

4.1 데이터 정의어 (DDL)

  • DDL (Data Definition Language): 테이블, 인덱스, 뷰를 생성, 삭제하는 명령어.

4.2 데이터 조작어 (DML)

  • DML (Data Manipulation Language): 데이터를 삽입, 삭제, 수정하기 위한 언어.

4.3 질의어 (Query)

  • SQL: 데이터를 질의하는 언어.

5. 데이터베이스 인터페이스

5.1 GUI 인터페이스

  • GUI: 초보 사용자나 관리자에게 친숙한 메뉴 및 폼 기반 인터페이스 제공. 예: MS Access의 테이블 만들기 기능.

6. DBMS 구성 모듈

6.1 주요 모듈

  • 저장 데이터 관리자: 디스크에 저장된 데이터베이스나 카탈로그에 대한 접근을 제어함.
  • 데이터 정의어 컴파일러: 스키마 정의를 처리하고, 메타데이터를 카탈로그에 저장함.
  • 실행 시 데이터베이스 처리기: 실행 중 데이터베이스 접근을 관리함.

7. 데이터베이스 유틸리티

7.1 주요 유틸리티

  • 적재(Loading): 데이터 파일을 자동으로 데이터베이스 테이블 형식으로 변환하여 저장함.
  • 백업(Backup): 전체 데이터베이스를 복사하여 백업 사본을 만듦.
  • 파일 재조직(Reorganization): 성능 향상을 위해 데이터 파일 구조를 재조직함.
  • 성능 모니터링(Performance Monitoring): 데이터베이스 사용 통계를 관리하고 성능을 최적화함.

8. 데이터베이스 아키텍처

8.1 중앙집중형 DBMS

  • 중앙집중형 아키텍처: 모든 DBMS 기능이 한 컴퓨터에서 실행됨. 단점: 많은 사용자가 접근할 경우 성능 저하가 발생함.

8.2 클라이언트-서버 아키텍처

  • 2계층 구조: 클라이언트와 서버로 분리하여 처리. 예: 수강신청 시스템.
  • 3계층 구조: 응용 서버와 DB 서버를 분리하여 성능과 보안을 강화함.

댓글

guest