본문 바로가기

테이블

(2)
SQLD 시험 대비 - 데이터 모델과 성능 (2) 3. 반 정규화 적용 ( 테이블, 칼럼, 관계 ) 3-1 테이블 반 정규화 테이블 병합( 1:1 관계 , 1:M관계, 슈퍼 / 서브타입) 1. 1:1관계를 통합하여 성능 향상 2. 1:M관계를 통합하여 성능향상 3. 슈퍼/서브 관계를 통합하여 성능향상 ( 슈퍼: 공통부분/ 서브: 공통으로부터 상속받아 다른 엔터티와 차이나는 특성) 테이블 분할( 수직분할, 수평분할) 1. 수직분할: 칼럼 단위 테이블을 디스크(I/O) 를 분산처리하기 위해 테이블을 1:1로 분리하여 성능향상 2. 수평분할 :로우 단위로 집중 발생되는 트랜잭션을 분석하여 디스크(I/O) 및 데이터 접근의 효율성을 높여 성능을 향상 하기 위해 로우 단위로 테이블을 쪼갬. 테이블 추가 1. 중복 : 다른 업무이거나 서버가 다른 경우 동일한 테이..
SQLD 시험 대비 - 데이터 모델과 성능 (1) 성능 데이터 모델링 : DB 성능 향상을 목적으로 설계 단계의 데이터 모델링 때부터 정규화, 반 정규화 테이블 통합, 테이블 분할, 조인 구조 , PK, FK 등 여러 가지 성능과 관련된 사항이 데이터 모델링에 반영될 수 있도록 하는 것. ==> 문제 발생 시점에 튜닝성능을 튜닝하며 데이터 모델이 변경 가능. 분석/ 설계 단계에서 데이터 모델에 성능을 고려한 데이터 모델링을 수행할 경우 성능 저하에 따른 재 업무 비용을 최소화할 수 있음. 데이터의 증가가 빠를수록 성능 저하에 따른 성능 개선비용은 기하급수적으로 증가하게 된다. 성능 데이터 모델링 고려사항 순서 1. 데이터 모델링을 할 때 정규화를 정확하게 수행 2. DB 용량산정을 수행한다. 3. DB에 발생되는 트랜잭션의 유형을 파악한다. 4. 용량과..

반응형