프린트 하기



서적 명 : SQL 튜닝의 시작2 SQL 튜닝 방법론



책소개

SQL 튜닝은 근거와의 싸움이다. SQL 튜닝에서의 근거는 튜닝 대상 추출 기준에서부터 시작된다. 이 책 [SQL 튜닝의 시작]은 어디에서 어떻게 데이터를 추출해야 하는지, 어떤 근거로 SQL 을 검증할 수 있는지를 자세히 설명하고 있다.


[인터넷 교보문고 제공]


목차

CHAPTER 1. SQL 튜닝은 어떻게 하지? 

SQL 튜닝 따라 해 보기2 

인덱스가 없는 경우4 

인덱스가 있는 경우12 

튜닝 절차 및 정보18 



CHAPTER 2. SQL 튜닝대상 선정방법 

SQL 튜닝대상 선정의 중요성24 


튜닝대상 선정을 위한 정보 및 활용 도구29 

업무 담당자의 조언 활용29 

SQL 성능 관련 Dictionary View 활용30 

성능 관리 솔루션 활용44 


Case 별 SQL 튜닝 대상 선정방법47 

Case1. IO / CPU Top SQL 관련 성능 개선 대상선정47 

Case2. Table Full Scan 관련 성능 개선 대상선정51 

Case3. Literal SQL 관련 성능 개선 대상선정57 

Case4. 배치 프로그램 관련 성능 개선 대상선정60 

Case5. 실행계획이 변경된 SQL 추출65 

Case6. ASH를 활용한 성능 개선 대상선정67 



CHAPTER 3. SQL 튜닝을 위한 정보 분석방법 

SQL 이해76 


SQL Graph79 

SQL Graph 접근 순서80 


SQL 실행정보 분석 및 활용방법89 

10046 Event89 

DBMS_MONITOR 활용하기100 

DBMS_XPLAN 활용하기103 

DBMS_SQLTUNE 정보 활용하기133 


Object 정보 분석 및 활용방법143 

테이블 구성정보 활용하기144 

인덱스 구성정보 파악하기147 


업무정보 분석 및 활용방법149 

TOP Table 정보 활용하기150 

Access Pattern 정보 활용하기154 

Bind Pattern 정보 활용하기156 

Segment Size 증가 량 활용하기157 


정보 분석을 통한 성능 개선 사례158 

STEP1. SQL 실행정보 분석하기159 

STEP2. 인덱스 구성 정보 확인160 

STEP3. Where절 조건 컬럼의 효율성 확인161 

STEP4. Bind Pattern 분석163 

STEP5. 월 단위 조회의 FTS 효율성 확인164 

STEP6. Table 정보 확인166 

STEP7. Access Pattern 정보 확인167 

STEP8. Partition 구성 및 인덱스 생성168 

STEP9. SQL 분기를 통한 해당 SQL 성능 확인169 



CHAPTER 4. SQL Tuning과 HINT의 관계 

HINT?175 


HINT의 사용규칙176 


HINT의 사용목적180 

통계정보에 의한 실행계획 이상180 

Bind Peeking에 의한 실행계획 이상181 

인덱스 구성 변경에 의한 실행계획 이상182 

Optimizer가 비효율 실행계획을 수립하는 경우182 


HINT의 종류와 사용방법183 

조인순서 관련 힌트186 

조인방식 관련 힌트191 

데이터 액세스 관련 힌트196 

VIEW 제어 힌트215 

서브쿼리 제어 힌트217 

EXPANSION 제어 힌트223 

WITH절 제어 힌트225 

PARALLEL 제어 힌트229 

INSERT 제어 힌트231 

PARAMETER 제어 힌트243 

SQL PERFORMANCE 관련 힌트246 

QUERY OPTIMIZING 관련 힌트252 


HINT 적용 및 주의사항256 

HINT 적용하기256 

Hint 사용 시 주의사항264 



CHAPTER 5. Dynamic SQL 튜닝 방법 

Dynamic SQL이란?273 


Dynamic SQL 튜닝 진행방식275 

Step1. SQL 조회 조건 파악278 

Step2. SQL 조회 조건 분석 데이터 수집279 

Step3. 조회 조건 별 효율성 체크 (개선안 도출)280 

Step4. XML 소스 수정 및 개선안 적용281 

Step5. 개선안 적용 후 모니터링284 


Dynamic SQL 튜닝 적용 시 주의사항284 


Dynamic SQL에 힌트 적용하기287 



CHAPTER 6. 대량의 데이터 처리 성능개선 방법 

적극적 Partitioning 전략296 

Partition 전환이 가능한 경우297 

Partition 전환이 불가한 경우311 

Partition 테이블 전환 방법317 


대량의 데이터 변경 작업의 성능개선 전략319 

대량의 Delete319 

대량의 INSERT323 

Merge 구문 활용330 


Parallel Processing 전략340 

Parallel Processing과 관련된 오해341 

Covering Index348 

In-Memory PQ353 


Memory Caching 전략358 

Keep Buffer 활용358 

Result Cache 활용382 


대량의 데이터에 대한 Summary 전략396 

Mview397 

집계 테이블402 



Appendix 

Dynamic Performance View409 

Partition Table 생성 스크립트442


[예스24 제공]