반응형
💡 성능데이터 모델링 수행 절차 
  1. 데이터모델링을 할 때 정규화를 정확하게 수행
  2. 데이터베이스 용량산정을 수행
  3. 데이터베이스에 발생되는 트랜잭션의 유형을 파악
  4. 용량과 트랜잭션의 유형에 따라 반정규화를 수행
  5. 이력모델의 조정, PK/FK조정, 슈퍼타입/서브타입 조정 등을 수행
  6. 성능관점에서 데이터모델을 검증

 

💡 I-32 반정규화
- 반정규화는 데이터를 중복하여 성능을 향상시키기 위한 기법
- 좀 더 넓은 의미의 반정규화는 성능을 향상시키기 위해 정규화된 데이터 모델에서 중복, 통합, 분리 등을 수행하는 모든 과정
- 데이터 무결성이 깨질 수 있는 위험을 무릅쓰고 데이터를 중복하여 반정규화를 적용하는 이유
-> 데이터를 조회할 때 디스크 I/O량이 많아서 성능이 저하되거나 경로가 너무 멀어 조인으로 인한 성능저하가 예상되거나 칼럼을 계산하여 읽을 때 성능이 저하될 것이 예상되는 경우 반정규화를 수행

 

 

💡 I-38 

컬럼 단위에서 중복된 경우도 1차 정규화의 대상이 된다.

이에 대한 분리는 1:M의 관계로 두 개의 엔터티로 분리된다.

 

 

💡 I-39

PK에 대해 반복이 되는 그룹이 존재하지 않으므로 1차 정규형

부분 함수종속의 규칙을 가지고 있으므로 2차 정규형이라고 할 수 없음.

2차 정규화의 대상이 되는 엔터티임.

 

 

💡 칼럼의 반정규화 기법
  • 중복칼럼 추가
  • 파생칼럼 추가
  • 이력테이블 칼럼추가
  • PK에 의한 칼럼 추가
  • 응용시스템 오작동을 위한 칼럼 추가

 

💡 I-43

주문 엔터티에 전체를 통합한 계산된 칼럼을 추가하는 것이 한번에 데이터를 조회하는 방법이 되므로 가장 효과적인 반정규화 기법이다.

 

 

💡 I-44

최근에 변경된 값만을 조회할 경우 과도한 조인으로 인해 성능이 저하되어 나타나게 된다.

 

 

💡 파티셔닝

논리적으로는 하나의 테이블이지만 물리적으로는 여러 개의 테이블로 분리하여 데이터 엑세스 성능도 향상시키고, 데이터 관리방법도 개선할 수 있도록 테이블에 적용하는 기법

 

 

💡 I-47

개별 테이블을 모두 조회하는 트랜잭션이 대부분이라는 가정이 있으므로 UNION/UNION ALL할 경우 개별조회에 따른 시간요소와 이것을 조합하는 성능저하가 발생된다. 따라서 하나의 테이블로 통합하도록 하고 대신 pk체계나 일반속성에 각 사건을 구분할 수 있도록 구분자를 부여한다.

 

 

💡 I-51

데이터베이스 상에서 DBMS가 제공하는 FK Constraints를 생성했는지 여부와 상관없이 조인 성능을 향상시키기 위한 인덱스를 생성해주는 것이 좋다. 

그러므로 수강신청테이블의 학사기준번호에 인덱스가 필요하다.

 

 

💡 I-52

Global Single Instance(GSI)는 통합된 한 개의 인스턴스 즉, 통합 데이터베이스 구조를 의미하므로, 분산데이터베이스와는 대치되는 개념임.

분산환경에 복제분산을 하는 방법으로 분산데이터베이스를 구성할 수 있고, 백업 사이트 구성에 대해서도 분산 환경으로 구성하여 적용할 수 있음.

반응형

'CS > SQLD' 카테고리의 다른 글

[sqld 오답노트] 2-1 SQL 기본 (3)  (0) 2023.11.16
[sqld 오답노트] 2-1 SQL 기본 (2)  (0) 2023.11.15
[sqld 오답노트] 2-1 SQL 기본 (1)  (0) 2023.11.14
[sqld 오답노트] 1-1 데이터 모델  (1) 2023.11.06

+ Recent posts