데이터 모델링 및 설계

2022. 6. 4. 16:48정처기(필기)/데이터베이스 구축

더보기

(1) 데이터 모델

1. 데이터 모델 개념

- 현실 세계의 정보를 인간과 컴퓨터가 이해할 수 있도록 추상화하여 표현한 모델

- 데이터 모델에 표시해야 할 요소에는 데이터 구조, 연산, 제약조건이 있다.

 

  • 구조 : 데이터베이스에 논리적으로 표현될 대상으로서의 개체 타입과 개체 타입들 간의 관계로, 데이터 구조 및 정적 성질을 표현하는 요소
  • 연산 : 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세로서 데이터베이스를 조작하는 요소
  • 제약조건 : 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건

 

▼ 데이터 모델 절차

  1. 요구조건분석 : 도출된 요구사항 간 상충을 해결하고 범위를 파악하여 외부 환경과의 상호 작용을 분석을 통해 데이터에 대한 요구 분석
  2. 개념적 설계 : 개념적 데이터 모델(사용자의 요구에 대한 트랜잭션을 모델링 하는 단계, 개념적 데이터 모델은 현실 세계에 대한 인식을 추상적, 개념적으로 표현하여 개념적 구조를 도출하는 데이터 모델, 주요 산출물은 개체관계 다이어그램)
  3. 논리적 설계 : 논리적 데이터 모델(트랜잭션의 인터페이스를 설계하는 단계, DBMS에 맞는 논리적 스키마를 설계하는 단계, 관계형 데이터베이스에서는 테이블을 설계하는 단계)
  4. 물리적 설계 : 논리 데이터 모델을 특정 DBMS의 특성 및 성능을 고려하여 물리적인 스키마를 만드는 단계(물리적 데이터 모델은 논리 데이터 모델을 사용하고자 하는 각 DBMS의 특성을 고려하여 데이터베이스 저장 구조로 변환하는 모델)

 

더보기

(2) 개체-관계(E-R) 모델

 1. 개체-관계 모델의 개념

- 현실 세계에 존재하는 데이터와 그들 간의 관계를 사람이 이해할 수 있는 형태로 명확하게 표현하기 위한 모델

 

 

2. 개체-관계 모델 구성요소

  • 개체 : 사물 등 유무형의 정보를 가지고 있는 요소(물리 단계에서 테이블로 변환)
  • 속성 : 개체가 갖는 속성(물리 단계에서 컬럼으로 변환)
  • 관계 : 두 개 이상의 개체 사이에 존재하는 연관성(1:1, 1:N, N:M 관계 존재)

 

더보기

(3) 논리적 데이터 모델링

1. 논리적 데이터 모델링 개념

- 업무의 모습을 모델링 표기법으로 형상화하여 사람이 이해하기 쉽게 표현하는 프로세스

 

 

2. 논리적 데이터 모델링 종류

  • 관계 데이터 모델 : 논리적 구조가 2차원 테이블 형태로 구성, 기본키와 외래키로 관계 표현, 관계도 자유로움
  • 계층 데이터 모델 : 논리적 구조가 트리 형태로 구성된 모델, 상하 관계가 존재, 1:N관계만 허용
  • 네트워크 데이터 모델 : 논리적 구조가 그래프 형태로 구성된 모델, 다대다 관계

 

더보기

(4) 데이터베이스 정규화

1. 데이터베이스 정규화란

- 관계형 데이터 모델에서 데이터의 중복성을 제거하여 이상 현상을 방지하고, 데이터의 일관성과 정확성을 유지하기 위해 무손실 분해하는 과정

- 테이블 불일치 위험을 최소화, 데이터 구조의 안정성, 효과적인 검색 알고리즘 생성

 

2. 이상 현상

- 이상 현상은 릴레이션 조작 시 데이터들이 불필요하게 중복되어 예기치 않게 발생하는 곤란한 현상

 

▼ 이상 현상의 종류

삽입 이상 : 릴레이션에 데이터를 삽입할 때 의도와는 상관없이 원하지 않은 값들도 함께 삽입

삭제 이상 : 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄 현상

갱신 이상 : 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 종보의 모순이 생김

 

3. 함수 종속

- R에서 X, Y를 각각 R의 애트리뷰트 집합의 부분 집합이라고 할 때, 애트리뷰트 X의 값 각각에 대해 시간과 관계없이 항상 애트리뷰트 Y의 값이 오직 하나만 연관되어 있는 관계

 

 

4. 데이터베이스 정규화 단계

  1. 1정규형 : 원자값으로 구성
  2. 2정규형 : 부분 함수 종속 제거
  3. 3정규형 : 이행 함수 종속 제거
  4. 보이스-코드 정규형 : 결정자가 후보 키가 아닌 함수 종속 제거
  5. 4정규형 : 다중 값 종속성 제거
  6. 5정규형 : 조인 종속성 제거

 

더보기

(5) 논리 데이터 모델 품질 검증

1. 논리 데이터 모델 품질 검증 개념

- 데이터 모델이 업무 환경에서 요구하는 사항을 시스템적으로 구현할 수 있는가를 객관적으로 평가하는 검증

- 데이터 모델의 요건은 완전성, 중복 배제, 비즈니스 룰, 데이터 재사용, 안전성 및 확장성, 간결성, 의사소통, 통합성이 충족되어야 한다.

- 데이터 모델 품질 검증 기준으로는 정확성, 완전성, 준거성, 최신성, 일관성, 활용성이 있다.