카테고리 없음

데이터베이스 스키마

programmerJung 2022. 6. 1. 12:10
반응형

데이터베이스 스키마(Schema)란 데이터베이스를 논리적으로 정의한 것이며, 데이터 구조와 제약조건에 대해서 

명세한(Specification) 것이다. 

 

스카마는 크게 4가지 요소로 구성된다. 

  • 개체(entity)
  • 속성(attribute)
  • 관계(relationship)
  • 제약조건(constraint)

데이터베이스의 구조

데이터베이스의 구조는 위와 같은데 한번 차근 차근 알아보자.

 

먼저 외부스키마를 살펴보자.

 

일반 사용자나 응용프로그래머가 접근하는 계층으로 전체 데이터 베이스 중에서 논리적인 부분을 의미한다.

쉽게 말해서 사용자가 접하는 데이터베이스라는 것이다. 외부스키마는 여러개가 있을 수 있다.

 

그 다음은 개념스키마이다.

 

전체 데이터베이스의 정의를 의미하고, 하나의 데이터베이스에는 하나의 개념스키마가 있다는 것을 기억하자.

이것은 외부스키마와 다른  부분이다.

 

마지막으로 내부스키마이다.

 

물리적 저장장치에 데이터베이스가 실제로 표현되는 방법을 표현한 것이다.

여기에서는 테이블의 구조나 인덱스, 데이터 레코드를 어떻게 배치하는 지, 데이터 압축에 대한 사항이 포함된다.

 

전 글에서 데이터는 논리적 물리적 독립성을 유지해야 한다고 했는데 이것은 이러한 구조에서

설명할 수 있다. 

 

먼저 논리적 데이터 독립성이다. 영어로는 logical data independence를 의미한다.

 

외부 단계(외부 스키마)와 개념 단계(개념 스키마)사이의 독립성을 의미한다. 

즉 논리적 구조가 변하여도 응용 프로그램에는 영향이 없다는 것이고, 

개념 스키마의 테이블을 만들거나 변경하여도 외부 스키마는 직접 다루는 테이블를 제외하고

영향이 없다는 것이다.

 

다음은 물리적 데이터 독립성이다. 영어로는 physical data independence이다.

 

개념 스키마와 내부스키마 사이의 독립성이다.

 

저장장치 구조 변경과 같이 내부 스키마가 바뀌어도 개념스키마에 영향을 미치지 않는 다는 것이다.

만약에 성능을 개선시키기 위해 물리적 저장장치를 재구성할 경우를 가정하면 이것이 개념 스키마나

외부스키마에 영향이 없다. 

물리적 독립성은 논리적 독립성 보다 구현하기가 용이한다.

 

 

 

반응형