실행 계획이 만들어지면 DBMS는 해당 실행 계획을 바탕으로 데이터에 접근을 하지만, 데이터의 양이 많은 테이블에 접근하거나 복잡한 SQL 구문을 실행하면 지연이 발생하는 경우가 종종 있습니다.
원인
모든 DBMS는 실행 계획을 살펴볼 수 있는 명령어가 존재하며 SQL 구문의 지연이 발생 시 제일 먼저 실행 계획을 살펴봐야 합니다.
실행 계획을 확인하는 명령어
이름 | 명령어 |
---|---|
Oracle | set autotrace traceonly |
MS SQL | SET SHOWPLAN_TEXT ON |
PostgreSQL | EXPLAIN SQL 구문 |
MySQL | EXPLAIN EXTENED SQL 구문 |
기본적인 SQL 실행 계획
예시 - 특정 업종의 점포에 대한 평가와 주소 지역 데이터를 저장하고 있는 테이블