티스토리 뷰

1. 데이터베이스 설계

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

2. 관계 데이터베이스의 대표 설계 방법

  • E-R 모델과 릴레이션 변환 규칙을 이용한 설계
  • 정규화를 이용한 설계 : 요구사항분석 -> 개념적설계 -> 논리적설계 -> 물리적설계 -> 구현
    • 설계 과정 중에 오류를 발견하여 변경이 필요하면 이전 단계로 되돌아가 설계 내용 변경 가능

데이터베이스의 설계 과정의 각 단계별 작업과 결과물

3. 설계 1단계 : 요구 사항 분석

  • 목적
    • 사용자의 요구 사항을 수집하여 분석하고 개발할 데이터베이스의 용도 파악
  • 결과물
    • 요구 사항 명세서
  • 주요 작업
    • 데이터베이스를 실제로 사용할 주요 사용자의 범위 결정
    • 사용자가 조직에서 수행하는 업무분석
    • 면담, 설문조사, 업무 관련 분석 등의 방법을 이용해 요구사항 수집
    • 수집된 요구 사항에 대하 분석 결과를 요구 사항 명세서로 작성

4.  설계 2단계 : 개념적 설계

  • 목적
    • DBMS에 독립적인 개념적 스키마 설계
    • 요구 사항 분석 결과물을 개념적 데이터 모델을 이용해 개념적 구조로 표현
      • 개념적 모델링
      • 일반적으로 E-R 모델을 이용 
    • 결과물
      • 개념적 스키마 : E-R 다이어그램
    • 주요 작업
      • 요구 사항 분석 결과를 기반으로 중요한 개체를 추출하고 개체 간의 관계를 결정하여 E-R 다이어그램 표현

5. 설계 2단계 : 개념적 설계

  • 작업 과정
    • STEP 1) 개체 추출, 각 개체의 주요 속성과 키 속성 선별
      • 개체 : 저장 할 만한 가치가 있는 중요 데이터를 가진 사람이나 사물등
      • 예) 병원 데이터베이스 개발에 필요한 개체
        • 병원 운영에 필요한 사람 : 환자, 의사, 간호사 등 
        • 병원 운영에 필요한 사물 : 병실, 수술실, 의료 장비 등
      • 개체 추출 방법
        • 요구 사항 문장에서 업무와 관련이 깊은 의미 있는 명사를 찾아라
          • 업무와 관련이 적은 일반적이고 광범위한 명사는 제외
          • 의미가 같은 명사가 여러개 일경우 대표 명사 하나만 선택
        • 찾아낸 명사를 개체와 속성으로 분류해라
    • STEP 2) 개체 간의 관계 설정
      • 관계 : 개체 간의 의미 있는 연관성
      • 관계 추출 방법
        • 요구 사항 문장에서 개체 간의 연관성을 의미 있게 표현한 동사를 찾아라
          • 의미가 같은 동사가 여러개일경우 대표 동사 하나만 선택
        • 찾아낸 관계에 대해 매핑 카디널리티와 참여 특성을 결정하라
          • 매핑 카디널리티 : 일대일, 일대다, 다대다
          • 참여 특성 : 필수적 참여 / 선택적 참여
    • STEP 3) E-R 다이어그램으로 표현

E-R 다이어그램

6. 설계 3단계 : 논리적 설계

  • 목적
    • DBMS에 적합한 논리적 스키마 설계
    • 개념적 스키마를 논리적 데이터 모델을 이용해 논리적 구조로 표현
    • 논리적 모델링 (데이터 모델링)
      • 일반적으로 관계 데이터 모델을 많이 사용
    • 결과물
      • 논리적 스키마 : 릴레이션 스키마
    • 주요 작업
      • 개념적 설계 단계의 결과물인 E-R 다이어그램을 릴레이션 스키마로 변환
      • 릴레이션 스키마로 변환 후 속성의 데이터 타입, 길이, 널 값 허용 여부, 기본 값, 제약 조건 등을 세부적으로 결정하고 결과를 문서화함
    • E-R 다이어그램을 릴레이션 스키마로 변환하는 규칙
      • 규칙 1 : 모든 개체는 릴레이션으로 변환한다.
        • 개체의 이름 -> 릴레이션의 이름
        • 개체의 속성 -> 릴레이션의 속성
        • 개체의 키 속성 -> 릴레이션의 기본키
        • 개체의 속성이 복합 속성인 경우에는 복합 속성을 구성하고 있는 단순 속성만 릴레이션의 속성으로 변환
      • 규칙 2 : 다대다(n:m) 관계는 릴레이션으로 변환한다.
        • E-R 다이어그램의 다대다 관계를 하나의 릴레이션으로 변환
        • 관계의 이름 -> 릴레이션의 이름
        • 관계의 속성 -> 릴레이션의 속성
        • 관계에 참여하는 개체를 규칙 1에 따라 릴레이션으로 변환 한 후 릴레이션의 기본키를 관계 릴레이션에 포함시켜 외래키로 지정하고, 외래키들을 조합하여 관계 릴레이션의 기본키로 지정
      • 규칙 3 : 일대다(1:n) 관계는 외래키로 표현한다.
        • E-R 다이어그램의 일대다 관계는 외래키로만 표현
          • 일반적인 일대다 관계는 외래키로 표현
          • 약한 개체가 참여하는 일대다 관계는 외래키를 포함해 기본키로 지정
          • 일대다(1:n) 관계에서 1측 개체 릴레이션의 기본키를 n측 개체 릴레이션에 포함시켜 외래키로 지정
          • 관계의 속성들도 n측 개체 릴레이션에 포함시킴
          • n측 개체 릴레이션은 외래키를 포함하여 기본키를 지정함
            • 약한 개체는 강한개체에 따라 존재여부가 정해지므로, 강한 개체의 기본키를 이용해 식별필요
      • 규칙 4 : 일대일(1:1) 관계는 외래키로 표현한다.
        • E-R 다이어그램의 일대일 관계는 외래키로만 표현
          • 일반적인 일대일 관계는 외래키를 서로 주고 받음
          • 일대일 관계에 필수적으로 참여하는 개체의 릴레이션만 외래키를 받음
          • 모든 개체가 일대일 관계에 필수적으로 참여하면 릴레이션 하나로 합쳐짐
          • 관계에 참여하는 개체 릴레이션의 서로의 기본키를 주고받아 외래키로 지정
          • 관계의 속성들도 모든 개체 릴레이션에 포함시킴
          • 불필요한 데이터 중복이 발생할 수 있음
      • 규칙 5 : 다중 값 속성은 릴레이션으로 변환한다.
        • E-R 다이어그램의 다중 값 속성은 독립적인 릴레이션으로 변환
          • 다중 값 속성과 함께 그 속성을 가지고 있던 개체 릴레이션의 기본키를 외래키로 가져와 새로운 릴레이션에 포함시킴
          • 새로운 릴레이션의 기본키는 다중 값 속성과 외래키를 조합하여 지정

7. 설계 4단계 : 물리적 설계

  • 하드웨어나 운영체제의 특성을 고려하여 필요한 인덱스 구조나 내부 저장 구조등에 대한 물리적인 구조를 설계

8. 설계 5단계 : 구현

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

'이론 > 데이터베이스' 카테고리의 다른 글

9장 정규화  (0) 2022.11.23
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30