데이터 베이스 정규화

데이터 베이스 정규화란 무엇일까?

  • 데이터 중복을 최소화 하고 없애기 위한 작업을 의미한다.
    정규화의 단계는 1NF,2NF,3NF,BCNF,4NF,5NF 단계로 이루어 진다.
    나는 이제 이 단계들에 대해서 알아볼겁니당.

1NF

  • 원자값으로 구성 -> 각 열의 데이터가 하나의 값만 가지고 있는 경우를 의미한다.

2NF

  • 부분 함수 종속 제거 (완전 함수적 종속 관계) -> 중복되는 데이터에 대해 다른 테이블로 분리되어 있을 때를 의미한다.

3NF

  • 이행함수 종속 제거 -> PK컬럼이 아닌 컬럼들이 서로 종속되지 않을 때를 의미한다
    아래 DB에서 보면 코인 거래 가능 여부가 사용자 고유 식별번호가 아닌 코인명에 종속되어진걸 볼수있다.
    이 부분을 제거하는게 3NF이다. 보통 3NF까지 진행한다고 한다.

BCNF

  • 결정자 함수이면서 후보 키가 아닌 것 제거

4NF

  • 다치(다중 값) 종속성 제거

5NF

  • 조인 종속성 제거

두음쌤 법칙 = 원부이 결다조
자화(1)/ 분함수 종속 제거(2)/ 행함수 종속 제거(3)/ 정자 함수 종속 제거(BCNF)/ 치 종속성 제거(4)/ 인 종속성 제거(5)

4,5NF 과정은 이해가 잘안간다. 그냥 키워드만 외우고 넘어갈래잉

데이터 흐름도(DFD)의 구성요소

우선 데이터 흐름도란 말 그대로 데이터가 흘러가는 흐름을 나타낸다.
데이터 흐름도의 구성요소는 처리기(Process), 데이터 흐름(Data Flow), 데이터 저장소(Data Store), 단말(Terminator) 로 구성된다. 자, 이제 하나하나 알아가보자

  • 처리기(Process)란 입력된 데이터를 원하는 형태로 변환하려 출력하기 위한 과정 주로 원(ㅇ) 으로 표시한당
  • 데이터 흐름(Data Flow)란 DFD 구성요소 간의 데이터 흐름을 표시한다 주로 화살표(->)
  • 데이터 저장소(Data Store)란 데이터가 저장된 장소이다 주로 (=)
  • 단말(Terminator) 데이터가 발생하는 시작과 종료를 나타낸다 주로 사각형(ㅁ)

데이터 베이스 모델링 절차

  • 모델링 절차는 요구사항 분석 -> 개념 모델링 -> 논리 모델링 -> 물리 모델링 순 이다.
절차설명
요구사항 분석현행 데이터의 문제점과 개선해야 할 점을 확인하고 향후 개선점을 도출하는 행동
개념 모델링업무 중심의 포괄적인 모델링으로 추상화하는 활동으로 주제 영역과 핵심데이터 간 관계 정의
논리 모델링관계(Relationship),속성(Attribute),키(Key) 등을 도출하는 활동
물리 모델링사용 DBMS 특성에 맞게 물리적 스키마를 만드는 활동

요기 베라의 다른 명언을 끝으로 이 글을 마무리 짓겠다.
다음 글에는 소프트웨어 품질 특성에 대해 알아보겠다.

profile
Luck is the residue of design. -Wesley Branch Rickey-

0개의 댓글