본문 바로가기
정보처리기사 필기 총정리/3과목: 데이터베이스 구축

쿼리 성능 최적화 ★

by 함께 공부해요 2020. 10. 3.
p.498, 3-107

- 데이터 입, 출력 애플리케이션의 성능 향상을 위해 SQL 코드를 최적화하는 것

- 쿼리 성능 최적화하기 전, 성능 측정 도구인 APM(Application Performance Management)을 사용해 최적화 할 쿼리를 선정해야 함

- 최적화 할 쿼리에 대해 옵티마이저가 수립한 실행 계획(Execution Plan)EXPLAIN 명령어를 통해 검토하고, SQL 코드와 인덱스 재구성

*옵티마이저(Optimizer): 작성된 SQL이 가장 효율적으로 수행되도록 최적의 경로를 찾아 주는 모듈

 

1) RBO(Rule Based Optimizer) vs CBO(Cost Based Optimizer)

 

RBO

CBO

최적화 기준

규칙에 정의된 우선순위

액세스 비용

성능 기준

개발자의 SQL 숙련도

옵티마이저 알고리즘의 예측 성능

특징

실행 계획 예측이 쉬움

성능 통계치 정보 활용, 예측이 복잡함

고려사항

개발자의 규칙 이해도, 규칙의 효율성

비용 산출 공식의 정확성

 

 

2) SQL 코드 및 인덱스 재구성

SQL 코드 재구성

 -서브 쿼리에 특정 데이터가 존재하는지 확인 할 때는 IN보다 EXISTS 활용

 -실행 계획이 잘못되었다고 판단되는 경우 힌트(Hint)를 활용해 변경

 

인덱스 재구성

 -인덱스의 추가 및 변경은 해당 테이블을 참조하는 다른 SQL문에도 영향을 줄 수 있으므로 신중히 결정

 -단일 인덱스로 쓰기나 수정 없이 일기로만 사용되는 테이블의 경우 IOT(Index-Organized Table) 구성 고려

 

 

wook-2124.tistory.com/275

 

2020 정보처리기사 필기 총정리 (시나공, 수제비)

본 정리 글은 시나공과 수제비 필기책의 내용을 압축 요약하여 작성했기 때문에 내용이 부족할 수 있습니다. 자세한 내용과 출제 예상문제 및 기출문제를 공부하기 위해서 책을 꼭 참고하시고,

wook-2124.tistory.com

wook-2124.tistory.com/206

 

정보처리기사 필기, 실기 공부방법 및 기출문제 무료 공유

<네이버페이 5천원 적립 이벤트> 10/18까지 네이버페이 5,000원을 무료​로 주는 이벤트가 진행중이니 한번 확인해보세요🙏 네이버페이 포인트 5천원 무료 적립 이벤트! 모르면 손해!! (초간단) 먼�

wook-2124.tistory.com

댓글