인용하는 그림은 다양한 곳에서 가져왔음을 밝힙니다
Ch 1. DB 시스템
Section 1. DB
1.1 데이터와 데이터 베이스 개념
- DB = 필요한 데이터를 모아 놓은 것
1.2 데이터와 정보
- 데이터 : 관찰하거나 측정하여 기술하는 가공되지 않은 사실이나 값
- 정보 : 의미 있고 쓸모 있는 내용으로 가공한 데이터
1.3 DB의 정의와 특징
- DB : 특정 조직에서 여러 명의 사용자 또는 응용 시스템들이 공유하고 동시에 접근하여 사용할 수 있도록 구조적으로 저장한 운영 데이터의 집합
- 공유 데이터(shared data)
- 통합된 데이터 : 중복을 최소화 하는 것이 중요하다.
- 저장된 데이터(stored data)
- 운영 데이터(operational data)
- DB 특징
- 실시간 처리 : 쿼리에 실시간으로 응답
- continuous evolution : 데이터 유지를 위해
- concurrent sharing
- content reference
Section 2. DBMS
2.1 DBMS 개념
2.2 DBMS의 등장배경
- 파일 시스템을 사용하여 데이터를 처리하는 응용 프로그램은, 각 응용 프로그램마다 파일에 접근, 관리, 유지하는 방법이 다르다.
- 파일 시스템은 OS가 설치될 때 게본적으로 설치되기 때문에 추가 비용이 발생하지 않지만, 데이터 종속정(dependency)와 중복성(redundency)문제가 있다.
- 데이터 종속성
- 데이터와 응용 프로그램 간의 상호 의존 관계
- 데이터의 구성 방법이나 구성 형식, 접근 방법을 변경하면 응용프로긂도 함께 변경되어야 한다.(컴파일 필요)
- 데이터 중복성
2.3 DBMS의 정의 및 장단점
- 사용자 또는 응용프로그램 사이에 위치하여 데이터베이스를 공유할 수 있도록 관리해 주는 소프트웨어
- 데이터 중복 최소화
- 데이터 sharing
- data consistency
- data integrity
- data security
- 항상 DBMS의 사용이 최선은 아니다. 고려해서 선택하면 됨.
2.4 DBMS의 종류
- 네트워크 DBMS : 그래프 기반 모델. 1960 초반
- 레코드 변경이 용이하지 않다. 레코드의 간의 관계를 알아야만 문제없이 변경 가능.
- 계층 DBMS : 트리 구조. 1960 후반
- 데이터 접근 방법을 미리 정희해야 하고, DB가 생성 될때 각각의 관계가 명시적으로 정의 되어야하는 단점
- 레코드들이 연결되어 있어 구조 변경이 어렵다
- 관계 DBMS. 1970 년도
- 테이블 기반의 관계 모델. 사용자는 자신이 원하는 거만 명시하고 데이터가 어디이 있는지, 어떻게 접근해야 하는지 고려하지 않아도 된다.
Section 3. DB 시스템
3.1 DB 시스템의 구성 요소
- 사용자
- 일반 사용자
- 응용 프로그래머
- 데이터베이스 관리자
- 데이터 언어
- 정의어 : CREATE, ALTER, DROP
- 조작어 : INSERT, UPDATE, DELETE
- 제어어 : GRANT(권한 추가), REVOKE(권한 회수)
- DBMS : Oracle, mssql server, my sql server
- DB
- 저장 DB
- DB 저장 : 데이터 개체에 대한 정의와 명세, meta data
3.2 3단계 데이터베이스 시스템 구조와 데이터 독립성
- DB의 다음의 3단계로 DB를 기술하고 이들 간의 관계를 정립하여 관리
- 3단계 DB 관리
- external level : 개별 사용자의 입장에서 데이터를 이용하는 견해
- conceptual level : 조직의 입장에서 보는 개인의 모든 견해. 종합된 조직 전체의 견해
- internal level : 물리적 저장 장치의 입장에서 보는 저장장치의 견해
- 데이터 구조와 그 제약조건에 대한 명세를 기술한 것으로 컴파일되어 데이터 사전에 저장된 것을 스키마(schema) 라고 한다.
- 3단계 스키마
- external schema : 개별 사용자 입장에서 DB 구조를 기술한 것. 개별 사용자를 위한 여러 형태의 외부 스키마 존재
- conceptual schemal : 조직 전체의 입장에서 통합된 DB를 기술한 것. 하나의 개념 스키마만 존재. schema 라고도 부름
- internal schema : 저장장치 입장에서 전체 데이터베이스가 저장되는 방법을 명세한 것. 하나의 내부 스키마만 존재
- 스키마 사이에 있는 대등관계 사상
- 3 단계 간의 사상
- 외부/개념 사상 : 논리적 구조(개념 스키마)를 변경하더라도 응용 프로그램에 영향을 주지 않아서 논리적 데이터 독립성 제공
- 개념 내부 사상 : 물리적 구조(내부 스키마)를 변경하더라도 응용 프로그램과 논리적 구조에 영향을 주지 않아 물리적 데이터의 독립성 제공
- 내부/장치 사상 : 내부 스키마와 물리적인 장치 간의 대응 관계를 정의한 것