IT Dictionary/Database

데이터베이스(Database) 설계하기

Jaebins 2024. 11. 21. 10:52
반응형

1. 요구 사항 분석

  • 사용자의 요구 사항을 수집하고 분석하고,  DB의 목적 파악
  • 결과물 : 요구 사항 명세서

 

2. 개념적 설계

  • 요구 사항 명세서를 기반으로 개념적 스키마 생성
  • 개체를 추출 (의미가 있는 명사를 찾음)
  • 개체 간의 관계를 정의 (의미가 있는 동사를 찾음)
  • E-R 다이어그램으로 개념적으로 표현
  • 결과물 : E-R 다이어그램 (개체-관계 다이어그램)
기호 기호 이름 의미
사각형 개체 타입
마름모 관계 타입
타원 속성
이중 타원 다중값 속성 (복합 속성)
밑줄 타원 기본키 속성
이중 실선 필수로 연결해줘야 하는 관계

 

3. 논리적 설계

  • 개념적 스키마를 논리적 모델링하여 논리적 스키마 생성
  • 관계 데이터 모델(릴레이션, 스키마) 를 주로 사용
  • 데이터 타입, 길이, 기본 값, 제약조건 등을 정의
  • 모든 개체는 릴레이션으로 변환한다.
  • 결과물 : 릴레이션, 스키마

3.1 N : M 관계

  • 주문 릴레이션에 각 릴레이션의 외래키 속성을 넣어준다.
  • 기본키를 따로 생성하거나, 두 외래키를 기본키로 지정한다.

고객 테이블과 상품 테이블의 N:M 논리적 설계 단계

3.2 1 : N 관계

  • N 릴레이션에 1 릴레이션을 참조하고 있는 외래키 속성으로 넣어준다.

제조업체 테이블과 상품 테이블의 1:N 논리적 설계 단계

 

  • 약한 개체의 기본키로는 릴레이션 관계가 성립되기 어렵기 때 외래키를 포함해서 기본키로 지정한다.

약한 개체가 포함된 1:N 관계

 

3.4 1 : 1 관계

  • 외래키를 서로 교환하여 표현한다.

1:1 관계
필수적 관계가 하나만 존재할 댸는 필수적으로 참여하는 릴레이션에 외래키를 추가한다.

 

모두가 필수적인 관계일 때는 혼인 릴레이션에 모든 속성을 합치고, 두 외래키를 기본키로 지정한다.

3.5 다중 값 속성

  • 다중 값 속성은 새로운 릴레이션으로 변환된다.

다중 값 속성 릴레이션

3.5 기타 규칙

  • 자기 자신을 참조하는 재귀형 방식일 수도 있다.

사원(사원번호, 이름, 상사)

 

4. 물리적 설계

  • 하드웨어나 운영체제의 특성을 고려하여 물리적인 구조 설계
  • 인덱스 구조, 내부 저장 구조, 접근 경로 등

 

5. 구현

  • SQL로 작성한 명령문을 DBMS에서 실행하여 데이터베이스를 생성
반응형