굿

함수적 종속성(FD), 4, 5차 정규화, DB Table Partitioning, 쿼리 오프로딩 본문

IT 기술/DB

함수적 종속성(FD), 4, 5차 정규화, DB Table Partitioning, 쿼리 오프로딩

sssssein 2024. 7. 4. 17:02
반응형

Ⅰ. 함수적 종속성

Ⅱ. 4, 5차 정규화

Ⅲ. DB Table Partitioning

Ⅳ. 쿼리 오프로딩


Ⅰ. 릴레이션 내 속성간의 관계, 함수적 종속성 설명

가. 함수적 종속성 개요

정의 한 릴레이션 내의 X,Y 속성 간의 "X가 Y를 결정하는 유일한 속성"인 관계

 

나. 함수적 종속성 유형

유형 관계 설명 정규화
완전함수
종속성
R(X, Y)에서
X -> Y
Y를 결정하는 속성이  X가 유일한 상태 2차 정규화 적용
부분함수
종속성
R(X, Y)에서
X 부분집합 -> Y
Y를 결정하는 X가 X의 부분집합이 존재 2차 정규화 적용
이행함수
종속성
R(X, Y, Z)에서
X -> Y, Y -> Z 이면 X -> Z
X가 Y를 결정하고 Y가 Z를 결정하면 X는 Z를 결정 3차 정규화 적용
결정자
종속성
R(X, Y)에서
X -> Y, X는 후보키 X
X가 식별자이지만 X가 후보기가 아닌 상태 BCNF 정규화 적용
다중값
종속성
R(X, Y, Z)에서
X -> Y, X -> Z이지만 Y, Z는 독립
Y는 X가 결정자이고 X와 Z가 독립상태 4차 정규화 적용
조인
종속성
R(X, Y, Z)에서
X -> Y, Y -> Z, Z -> X
X와 Y, Y와 Z, Z와 X 관계, 전체관계 없는 상태 5차 정규화 적용

- 정규화를 진행하여 종속성을 제거

 

Ⅱ. 4차, 5차 정규화 설명

가. 4차 정규화 설명

정의 하나의 릴레이션에 두 개 이상의 다치 종속(Multi-Valued Dependency) 제거
정규화 전
정규화 후

- 4차 정규화 통해 다치 종속을 제거

 

나 .5차 정규화 설명

정의 X, Y, Z 간의 관계에서 X -> Y, X -> Z, Y -> Z 관계 존재, 3개 이상 릴레이션 분리, 조인 속성 제거
정규화 전
정규화 후

- 각각의 관계는 있으나 전체 관계가 없는 경우 적용

 

Ⅲ. DB Table 파티셔닝 유형

유형 개념도 설명
범위 분할
(range partitioning)
분할 키 값이 범위 내에 있는지 여부로 구분
목록 분할
(list partitioning)
목록에 파티션 할당, 목록에 비추어 파티션 선택
해시 분할
(hash partitioning)
해시 함수 값에 따라 파티션 포함 여부 결정
합성 분할
(composite partitioning)
여러가지 분할 기술 결합
범위 분할 -> 해시 분할 또는
범위 분할 -> 목록 분할

- 각 기법의 장단점을 고려하여 최적의 유형 선정

 

Ⅳ. 쿼리 오프로딩 설명

개념도
정의 DB 처리 성능 향상을 위해 update(10~30%) 트랜잭션과 read(70~90%) 트랜잭션의 DB를 분리하는 방법
구성요소 Master DB Update 트랜잭션(Create/Delete/Update)만 수행
Staging DB Slave DB로 복제하기 위한 중간 경유지 역할
Slave DB Read 트랜잭션만 수행, N개의 Slave DB로 구성하여 장애시 대체하는 HA(High Availability) 기능 제공

- Master -> Staging -> Slave DB 복제시 CDC(Change Data Capture) 기술 이용

반응형