1. 데이터베이스 관리 시스템 (DBMS)의 발전 배경
파일 중심 데이터 처리 시스템(file system)
- OS가 지원
- 각 응용 프로그램이 논리적 파일 구조를 정의하고 직접 물리적 파일 구조로 구현
- 각 응용 프로그램이 물리적 데이터 구조에 대한 접근 방법을 구현
- 각 사용자가 데이터와 이를 처리하는 프로그램을 모두 관리 유지
- 응용 간의 데이터 공용이 불가능
- 데이터의 종속성과 중복성을 야기
데이터의 종속성과 중복성
1. 데이터 종속성
- 응용 프로그램과 데이터간의 상호 의존관계
- 데이터의 구성 방법이나 접근 방법의 변경시 관련 응용 프로그램도 동시에 변경해야 됨
- 응용 프로그램 관리가 곤란
2. 데이터 중복성
- 한 시스템 내에 같은 내용의 데이터가 여러 파일에 중복 저장되어 관리
- 문제점
일관성 : 데이터간에 불일치가 일어나 데이터 일관성이 없게 된다.
보안성 : 같은 데이터가 여러곳에 중복되어 저장되어 똑같은 수준의 보안을 유지하기 힘듬
경제성 : 추가적으로 필요한 저장공간에 대한 비용이 든다
무결성 : 제어가 분산되어 데이터 무결성(정확성)을 유지하기 힘들다.
2. 데이터베이스 관리 시스템의 정의
DBMS란
- 응용 프로그램과 데이터 사이의 중재자로서 모든 응용 프로그램들이 데이터베이스를 공용할 수 있게 관리해 주는 범용 소프트웨어 시스템
3. 데이터베이스 관리 시스템의 필수 기능
1. 정의 기능 : 하나의 저장 구조로 여러 사용자의 요구를 지원할 수 있도록 데이터를 조직하는 기능
- 요건
1. 데이터의 논리적 구조를 명세
2. 데이터의 물리적 구조를 명세
3. 물리적/논리적 사상(mapping)을 명세
2. 조작 기능 : 사용자와 데이터베이스 간의 인터페이스를 위한 수단
- 체계적 데이터베이스 접근 및 조작
1. 검색
2. 갱신
3. 삽입
4. 삭제
- 데이터 언어로 표현
- 모든 사용자에게 사용하기 쉽고 자연스러워야 한다.
- 명확하고 완전해야 한다.
- 효율적이어야 한다.
3. 제어 기능 : 데이터의 정확성과 보안성을 유지하는 기능
- 제어 기능의 요건
1. 무결성 유지 : 갱신, 삽입, 삭제 작업이 정확하게 수행되게 하여 데이터의 무결성을 해치지 않도록 제어해야한다.
2. 보안 : 정당한 사용자가 허가된 데이터만을 접근할수록 보장
3. 병행수행 제어 : 여러 사용자가 데이터베이스를 동시에 접근하여 데이터를 처리하더라도 데이터베이스의 처리 결과는 항상 정확성이 유지되도록 병행제어 기능을 가져야 한다.
4. 데이터베이스 관리 시스템의 장단점
장점
- 데이터 중복의 최소화 : 데이터의 중복이 불가피할 때 제어된 중복 사용
- 데이터의 공용
- 일관성 유지 : 한 사실을 나타내는 두개의 데이터가 있을때, 하나의 데이터만 변경되고 나머지는 변경되지 않으면 모순성을 가진다. 데이터의 중복을 제어하고 통제를 통해 일관성을 유지
- 무결성 유지 : 데이터베이스에 저장된 데이터 값과 그것이 표현하는 현실세계의 실제 값이 일치하는 정확성
- 보안 보장
- 표준화 용이
- 기관 전체 데이터 요구의 조정 : 상충되는 데이터 요구를 분석해 기관 전체에 가장 효율적인 정보처리 효과 제공
단점
- 운영비의 증대 : 컴퓨팅 자원 사용
- 특정 응용 프로그램의 복잡화 : 다양한 유형의 데이터들이 서로 연관되어있고, 제한조건을 고려해야 한다.
- 복잡한 백업과 회복 : 구조가 복잡하고 여러사용자 동시 이용
- 시스템의 취약성 : 장애 발생시 전체 시스템을 정지시킴
5. 데이터 독립성
DBMS가 추구하는 궁극적인 목적 : 데이터의 논리적 구조나 물리적 구조가 변경되더라도 응용 프로그램이 영향을 받지않는 데이터 독립성을 제공하는 것
1. 논리적 데이터 독립성 : DBMS가 데이터베이스의 논리적 구조를 변경시키더라도 기존 응용 프로그램들에 아무런 영향을 주지 않는 것
- 응용 프로그램의 효율적 개발이 가능
2. 물리적 데이터 독립성 : DBMS의 데이터베이스의 물리적 구조의 변경이 데이터베이스의 논리적 구조에도 영향을 주어서는 안된다.
- 저장 장치의 효율적 개발이 가능
데이터 독립성 구현 기법 : 사상(mapping)
6. 데이터베이스 관리 시스템의 역사
'Study > 데이터베이스' 카테고리의 다른 글
데이터베이스 6. SQL (0) | 2023.10.22 |
---|---|
데이터베이스 5. 관계대수와 관계해석 (0) | 2023.10.22 |
데이터베이스 4. 관계 데이터베이스 (0) | 2023.10.16 |
데이터베이스 3. 데이터베이스 시스템의 구성 (0) | 2023.10.15 |
데이터베이스 1. 데이타베이스 환경 (0) | 2023.09.18 |