DBMS: DataBase Management System
→ 데이터베이스를 관리해주는 소프트웨어
데이터베이스 관리 시스템의 정리
- DBMS(Database management system) 이란?
응용 프로그램과 데이타 사이의 중재자로서 모든 응용 프로그램(사용자)들이 데이타베이스를 공용할 수 있게 관리해 주는 범용 소프트웨어 시스템
DBMS의 필수 기능
- 정의(definition) 기능
- 하나의 저장 구조(storage structure)로 여러 사용자의 요구를 지원할 수 있도록 데이타를 조직(organize)하는 기능
- 정의 기능의 요건
- 데이타의 논리적 구조(logical structure)를 명세
- 데이타의 물리적 구조(physical structure)를 명세
- 물리적/논리적 사상(mapping)을 명세
- 조작(manipluation) 기능
- 사용자와 데이타베이스 간의 interface를 위한 수단
- 체계적 데이타베이스 접근 및 조작: 검색(retrieve), 갱신(update), 삽입(insert), 삭제(delete)
- 데이타 언어로 표현
- 사용하기가 쉽고 자연스러운 도구
- 원하는 연산의 명세 가능
- 효율적인 처리
- 제어(control) 기능
- 데이타의 정확성(correctness)과 보안성(security)을 유지하는 기능
- 제어 기능의 요건
- 무결성(integrity) 유지
- 보안(security), 권한(authority) 검사
- 병행수행 제어(concurrency control)
- 복구(recovery)
DBMS의 장단점
- 장점
- 데이타 중복(redundancy)의 최소화
- 데이타의 공용(sharing)
- 일관성(consistency) 유지
- 무결성(integrity) 유지
- 보안(security) 보장
- 표준화(standardization) 용이
- 기관 전체 데이타 요구의 조정
- 단점
- 운영비의 overhead
- 복잡한 절차의 data backup과 recovery
데이터 독립성
- 데이타 독립성 (data independency)
- 논리적 데이타 독립성(logical data independency)
- 응용 프로그램에 영향을 주지 않고 논리적 데이타 구조의 변경이 가능
- 예: 고객 정보에 “전화번호” 필드 추가
- 응용 프로그램의 효율적 개발이 가능
- 물리적 데이타 독립성(physical data independency)
- 응용 프로그램과 논리적 데이타 구조에 영향을 주지 않고 물리적 데이타 구조의
- 예: 저장 장치 변경(SSD, HDD 등), 인덱스 추가
- 저장 장치의 효율적 개발이 가능
변경이 가능
- 데이타 독립성 구현 기법
- 사상(mapping)