본문 바로가기
공부/데이터베이스

8. 데이터베이스 설계 / 01 데이터베이스 설계 단계

by 라이티아 2025. 9. 13.

데이터베이스 설계

사용자들의 요구 사항을 고려하여 데이터베이스를 생성하는 과정

 

사용자가 데이터베이스를 사용시 구조를 변경하기 어렵기 때문에 설계부터 중요함

 

데이터베이스를 평가하는 기준 = 실제로 사용하는 구성원들의 요구 사항을 만족하는가?

 

 

관계 데이터 모델을 기반으로 두고 데이터베이스를 설계할 때는 두 가지 방법을 주로 사용한다

  1. ER 모델과 릴레이션 변환 규칙을 이용한 데이터베이스 설계
  2. 정규화를 이용한 데이터베이스 설계

결과물이 유사하기에 상황에 따라 선택하면 됨

 

우선 ER모델과 릴레이션 변환 규칙을 이용한 설계를 우선적으로 본다

 

기본적으로 5단계 구성이며 무조건 한 방향으로 진행되는게 아니라, 변경 필요시 다시 이전 단계로 돌아가 설계 내용을 변경할 수 있다

 

  1. 요구사항 분석
    조직의 구성원들이 데이터베이스를 사용하는 용도를 파악
    이를 바탕으로 요구 사항 명세서로 작성한다
  2. 개념적 설계
    1에서 작성한 명세서를 바탕으로 개념적 데이터 모델을 이용해 표현한다
    일반적으로 개념적 데이터 모델은 ER모델을 많이 사용하며 보통 ER다이어그램으로 표현한다
    이때 일어나는 일을 개념적 모델링이라 한다
    ER 다이어그램과 같이 개념적 데이터 모델로 표현한 결과물을 개념적 스키마라 부른다
  3. 논리적 설계
    개발에 사용할 DBMS에 적합한 논리적 데이터 모델을 이용해 개념적 설계 단계에서 생성한 개념적 구조를 기반으로 논리적 구조를 설계한다
    DBMS에 따라서 여러 모델이 있지만, 대부분 관계 데이터 모델을 사용한다
    ER 다이어그램을 릴레이션 스키마 = 테이블로 변환하여 DBMS가 처리할 수 있도록 한다
    ER 다이어그램을 릴레이션 스키마로 변경하는 것을 논리적 모델링, 데이터 모델링이라 한다
    릴레이션 스키마와 같이 논리적 데이터 모델로 표현된 결과물을 논리적 구조, 논리적 스키마라 한다
  4. 물리적 설계
    저장 장치에 적합한 저장 레코드와 인덱스의 구조 등을 설계, 저장된 데이터와 인덱스에 빠르게 접근하게 할 수 있는 탐색 기법등을 정의한다
    물리적 설계의 결과물인 물리적 구조를 내부 스키마, 물리 스키마라 부른다
  5. 구현
    이전 설계 단계의 결과물을 기반으로 DBMS에서 SQL로 작성한 명령문을 실행하여 데이터베이스를 실제로 생성한다
    이때 사용되는 SQL문은 테이블이나 인덱스 등을 생성할 때 사용되는 데이터 정의어DDL 다