반응형
Ⅰ. 함수적 종속성
Ⅱ. 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) 기술 이용
반응형
'IT 기술 > DB' 카테고리의 다른 글
앙상블 기법 (0) | 2024.10.01 |
---|---|
데이터 모델링의 4단계 (0) | 2024.10.01 |
NoSQL CAP 이론 (0) | 2024.10.01 |
빅데이터 분석, 처리를 위한 Hadoop, Kappa (0) | 2024.07.04 |
데이터베이스의 동시성 제어/병행제어(Concurrency Control) (0) | 2024.07.04 |