(1) 데이터베이스 설계란
미리 정의된 응용들의 모임을 위해서 조직체의 사용자들의 정보 요구를 수용하여 하나 이상의 데이터베이스의 논리적인 구조와 물리적인 구조를 설계하는 것을 의미합니다.
한 조직체의 운영과 목적을 지원하기 위해 데이터베이스를 생성한다. 주요 목적은 모든 주요 응용과 사용자들이 요구하는 데이터, 데이터 간의 관계를 표현하는 것이다.
데이터베이스 설계는 2가지로 구분된다.
[ 1. 개념적 데이터베이스 설계 ]
실제로 데이터베이스를 어떻게 구현할 것인가와는 독립적으로 정보 사용의 모델을 개발하는 과정이다.
(개념적인 구조를 다룬다.)
개념적 데이터베이스 설계 과정에서 조직체의 엔티티, 관계, 프로세스, 무결성 제약조건 등을 나타내는 추상화 모델을 구축한다. ( ER 모델 )
데이터베이스 구조나 스키마를 하향식으로 개발할 수 있기 위한 틀을 제공한다.
- 비즈니스를 더 잘 이해할 수 있다.
- 최종 사용자와 의사소통을 가능하게 해준다.
- 설계상의 실수를 초기에 발견할 수 있다.
- DBMS와 독립적인 DB 설계가 가능하다.
[ 2. 물리적 데이터 베이스 설계 ]
물리적인 저장 장치와 접근 방식을 다룬다.
(2) 데이터베이스 설계 과정
(1) 요구사항 수집과 분석
: 요구사항을 수집하고, 의견들을 평가하고 조정한다. ( 기존의 문서를 조사, 인터뷰, 설문조사 방법을 이용 )
수집 단계에서 사용자들의 데이터 요구사항과 처리 요구사항들을 모두 파악해야 한다.
: 요구사항 분석은 실세계에서 관심 있는 부분의 정보 구조 요구를 파악하는 것이다.
( 관련 있는 엔티티들과 이들의 속성은 무엇인가, 엔티티들 간의 관계가 무엇인가, 데이터 처리에 관한 요구사항에 대하여 연산들은 무엇인가, 연산들의 의미, 접근하는 데이터 양 등을 분석한다. )
(2) 개념적 설계
모든 물리적인 사항과 독립적으로 한 조직체에서 사용되는 정보의 모델을 구축하는 과정이다.
대표적인 모델로 ER모델이 있는데 단순하고, 표현력이 뛰어나고, 다이어그램으로 나타낼 수 있는 장점이 있다.
사용자들의 요구사항 명세로부터 개념적 스키마가 작성된다.
엔티티 타입, 관계 타입, 속성들을 식별하고, 속성들의 도메인을 결정하고, 후보 키와 기본 키 속성들을 결정한다.
완성된 개념적 스키마는 ER 다이어그램으로 표현된다.
요구사항 명세 -> 개념적 스키마 -> ER 다이어그램
(3) DBMS 선정
기술적인 요인, 정치적인 요인, 경제적인 요인 등을 고려한 후 DBMS를 선정한다.
(4) 논리적 설계
데이터베이스 관리를 위해 선택한 DBMS의 데이터 모델을 사용하여 논리적 스키마를 생성한다.
개념적 스키마 (+) 알고리즘 -> 논리적 스키마
(5) 정규화
ER 스키마를 변환해서 얻은 관계 스키마를 분석하여 더 정제하는 과정을 거쳐야 한다.
관계 스키마에 중복과 갱신 이상이 있는지 검토한다.
(6) 물리적 설계
처리 요구사항들을 만족시키기 위해 저장구조와 인덱스 등을 결정한다.
'CS > Database' 카테고리의 다른 글
[DB] 데이터베이스 ER모델(2) - 관계와 관계 타입 / 전체 참여, 부분참여, 다중 관계, 순환적 관계란 (0) | 2022.09.27 |
---|---|
[DB] 데이터베이스 ER모델 (1) - 엔티티, 엔티티 타입, 애트리뷰트 (0) | 2022.09.27 |
[DB] 데이터 베이스 무결성 제약조건 유지 - 삽입, 삭제, 수정 (0) | 2022.09.11 |
[DB] 데이터 베이스 무결성 제약조건 : 도메인,키,기본키,엔티티,참조 무결성 제약조건 알아보기 (0) | 2022.09.10 |
[DB] 파일 시스템과 DBMS의 차이 - 데이터 관리 시스템 (0) | 2022.09.03 |