본문 바로가기
Database

데이터베이스의 구조

by it's woo 2021. 9. 14.
 

데이터베이스 개론 - 교보문고

[요약]①데이터베이스 기초 이론 : 1장에서 데이터베이스를, 2장에서 DBMS를 소개합니다. 3장에서는 이들을 조합한 데이터베이스 시스템을 소개합니다.②데이터 모델과 연산 : 4장에서 데이터 모

www.kyobobook.co.kr

스키마

스키마는 데이터베이스에 저장되는 구조와 제약조건을 정의한 것이다.

고객정보를 저장한다고 할 때 고객번호를 정수로 부여하고, 이름을 10자의 문자열, 나이는 정수 등

위와 같은 내용이 스키마다.

고객 번호
INT
이름
CHAR(10)
나이
INT

 

3단계 데이터 베이스의 구조

 

하나의 데이터베이스를 세 단계로 나누어 이해한다.

 

외부 단계-사용자 관점에서 바라본다.

외부 단계에서는 개별 사용자 관점에서 데이터베이스를 이해하고 표현한다. 

 

각 사용자가 데이터베이스 전체에 관심이나 정보가 필요하지 않다.

쇼핑몰을 운영하기 위해 필요한 데이터 베이스에 고객, 상품, 직원에 관련 데이터들이 존재한다.

고객 관리 팀은 고객 관련 데이터만 필요할 것이고, 상품 관리 팀은 상품 데이터만 필요할 것이다.

 

외부 단계에서는 개별 사용자가 데이터 베이스를 어떻게 보는가를 표현하므로 사용자마다 생각하는 데이터베이스의 구조가 다르다. 

외부 단계에서 사용자에게 필요한 데이터베이스를 정의한 것을 외부 스키마라 한다.

데이터베이스 하나는 여러 외부 스키마가 존재할 수 있으며 사용목적이 같은 사람들끼리 공유한다.

전체 데이터베이스 중 사용자가 관심을 가지는 일부분으로 볼 수 있다.

 

개념 단계-조직 전체의 관점에서 바라본다.

데이터베이스를 이용하는 사용자들의 관점을 통합하여, 데이터베이스를 조직 전체의 관점에서 이해하고 표현한다.

외부 단계에서처럼 일부분이 아닌 전체 데이터베이스에 관심을 둔다.

모든 사용자에게 필요한 데이터베이스의 논리적 구조를 정의한다.

 

모든 개별 사용자가 생각하는 데이터베이스를 하나로 합친 것이며 조직 전체의 관점에서 생각하는 데이터베이스이다. 

 

데이터베이스 하나에는 하나의 개념 스키마가 존재한다. 외부 스키마는 개념 스키마를 기초로 하여 목적에 맞게 사용된다.

 

내부 단계-물리적인 저장 장치의 관점에서 바라본다.

전체 데이터베이스가 저장 장치에 실제로 저장되는 방법을 정의한다. 

내부 스키마는 데이터베이스의 개념 스키마에 대한 물리적인 저장구조를 표현하므로 데이터베이스에 하나만 존재한다.

내부 단계에서 외부 단계로 갈수록 추상화 레벨이 높아진다.

 

데이터의 독립성

사용자는 외부 스키마를 통해 원하는 데이터를 얻으려면 내부 스키마에 따라 저장된 데이터베이스에 접근해야 한다.

이렇게 하기 위해 스키마 사이에는 유기적인 대응 관계가 성립해야 한다.

 

스키마 사이의 대응 관계를 사상 또는 매핑이라 한다. 

 

외부 스키마와 개념 스키마는 외부/개념 사상에 의해 대응되고

개념 스키마와 내부 스키마는 개념/내부 사상에 의해 대응된다.

데이터베이스의 구조가 3단계로 나뉘고 대응관계를 정의하는 이유는 독립성 때문이다.

 

논리적 데이터 독립성

응용 인터페이스라고도 한다. 

개념 스키마가 변경되더라도 외부 스키마가 영향을 받지 않는 것이다.

전체 데이터베이스의 논리적인 구조가 변경되어도 관련된 외부/개념 사상 정보만 적절히 수정해주면 관련이 없는 외부 스키마는 변경할 필요가 없다.

 

물리적 데이터 독립성

저장 인터페이스라고도 한다.

내부 스키마가 변경되더라도 개념 스키마가 영향을 받지 않는 것이다. 결과적으로는 외부 스키마도 영향을 받지 않는다.

데이터베이스의 저장 구조가 변경되어도  관련된 개념/내부 사상 정보만 적절히 수정해 주면 관련이 없는 데이터베이스의 논리적 구조는 영향을 받지 않는다.

 

데이터 사전

시스템 카탈로그라고도 한다.

데이터를 올바르게 관리하고 이용하기 위해서는 필요한 부가정보도 저장하여야 한다. 대표적으로 스키마와 사상 정보다

 

데이터 사전은 일반 사전과 같이 데이터 베이스에 저장되어 있는 데이터를 정확하고 효율적으로 이용하기 위해 참고해야 되는 스키마, 사상 정보, 다양한 제약조건 등을 저장하고 있다.

 

데이터 사전에 있는 데이터에 실제로 접근하는 데 필요한 위치 정보는 데이터 디렉터리라는 곳에서 관리한다.

 

데이터 사전은 사용자와 시스템 모두 접근 가능하지만

데이터 디렉터리는 시스템만 접근할 수 있다.

 

 

 

 

 

'Database' 카테고리의 다른 글

관계 데이터 모델 용어  (0) 2021.12.05
개체-관계  (0) 2021.12.04
데이터베이스 관리 시스템  (0) 2021.12.04
데이터베이스 정의와 특징  (0) 2021.09.08
데이터와 정보의 차이  (0) 2021.09.08