전공공부/데이터베이스 (Database)

[데이터베이스] 데이터베이스 설계

jooona 2021. 2. 18. 23:49
반응형

데이터베이스 설계란 데이터베이스를 생성하는 일련의 과정으로 볼 수 있습니다. 데이터베이스 설계는 다음과 같은 순서로 진행됩니다.

 

요구사항 분석 -> 개념적 설계 -> 논리적 설계 -> 물리적 설계 -> 구현

 

각 단계에 대해 자세히 공부해보도록 하겠습니다.

 

1. 요구사항 분석

요구사항 분석은 말 그대로 사용자의 요구사항을 수집하고 분석하는 과정입니다. 성공적인 데이터베이스 설계를 위해서는 반드시 정확한 사용자의 요구사항을 도출해내어야 하며, 전체 시스템 개발 과정 중에 가장 어려운 단계로 볼 수도 있습니다.

 

사용자에 따른 수행 업무와 필요한 데이터의 종류, 용도, 처리 형태, 흐름, 제약 조건 등을 수집해야 하며, 수집한 자료를 바탕으로 요구사항 명세서를 작성합니다.

 

2. 개념적 설계

개념적 설계란 현실 세계의 인식을 추상적인 개념으로 표현하는 과정입니다. 개념적 설계 단계에서는 개념적 스키마 모델링과 트랜잭션 모델링을 병행적으로 수행합니다. 개념적 설계의 결과로는 E-R 다이어그램을 작성할 수 있으며, 이는 DBMS와는 독립적입니다. DBMS와 독립적이라는 말은, 어떤 DBMS에라도 사용할 수 있다는 뜻입니다.

 

개념적 스키마 모델링은 스키마의 구성 요소인 개체, 속성, 관계를 식별하여 결정하고, 이를 추상화하는 것입니다. 그리고 트랜잭션 모델링은 요구사항 분석 단계에서 얻어진 결과를 이용해 이들에 대한 트랜잭션을 기술하는 과정입니다. 참고로 트랜잭션이란 데이터베이스의 연산들의 집합으로, 작업의 논리적인 단위입니다.

 

3. 논리적 설계

논리적 설계란 개념적 데이터 스키마를 사용할 DBMS가 처리할 수 있도록 논리적 데이터 스키마로 바꿔주는 작업입니다. 다시 말해 개념 세계의 데이터들을 데이터 타입을 정의해주고, 이 데이터 타입들 간에 관계를 표현해주는 등 모델화를 진행합니다. 또한 모델링 된 트랜잭션의 인터페이스를 설계하고, 관계형 데이터베이스의 경우, 테이블을 설계하기도 합니다. 

 

4. 물리적 설계

물리적 설계는 논리적 데이터 스키마로부터 물리적 데이터 구조를 설계하는 과정입니다. 즉 논리적 구조로 표현된 데이터들을 저장장치에 저장할 수 있는 구조의 데이터로 변경하는 것입니다.

 

물리적 설계 단계에서는 데이터베이스 파일의 저장 구조 및 접근 경로 등을 결정하고, 레코드 집중화(record clustering) 등에 대해 설계합니다.

 

5. 구현

데이터 정의어를 이용해 빈 데이터베이스 파일을 생성하고, 데이터들을 채워 넣어주는 과정입니다. 또한 트랜잭션을 작성하고, 데이터베이스 접근을 위한 응용 프로그램도 작성합니다.

반응형