Skip to main content
SQLOZ
Chapter 19 OzSuite™ AI & Advanced Tools

제19장: OzExplain - 실행 계획 트리 및 인덱스 추천

안내: 이 장에서는 복잡한 EXPLAIN 텍스트 출력을 직관적인 시각적 실행 계획 트리로 변환하고, 통계 불일치를 경고하며 최적의 인덱스를 권장하는 OzExplain 기능을 설명합니다.

이 장의 내용:

19.1 시각적 실행 계획 트리

SELECT 쿼리를 선택하고 Cmd + E를 누르면, OzExplain이 쿼리 실행 계획을 색상 노드 트리로 시각화합니다.

  • 빨간색 노드 (병목 구간): 전체 테이블 스캔(Full Table Scan / ALL), 디스크 임시 테이블(using temporary), 디스크 정렬(filesort) 등 고비용 작업.
  • 녹색 노드 (최적화 구간): 기본 키 조회(const, eq_ref) 및 B-Tree 인덱스를 통한 고속 검색.

19.2 예상 행 수 vs 실제 행 수 비교 분석

EXPLAIN ANALYZE(MySQL) 또는 대응하는 ANALYZE(MariaDB)를 지원하는 환경에서는 옵티마이저의 예상 행 수와 실제 실행 행 수를 비교합니다.

차이가 3배를 초과하면 노드에 경고가 표시됩니다:

ANALYZE TABLE orders; -- 실제 처리 행(450,000)이 예상치(1,000)를 450배 초과함

팁: 이 경고는 테이블 통계 정보가 오래되었음을 의미하므로, ANALYZE TABLE을 실행하여 카탈로그 통계를 갱신하는 것이 좋습니다.

19.3 인덱스 추천

전체 테이블 스캔(ALL)이 감지되면 OzExplain은 추천 인덱스 생성 쿼리를 안내합니다:

CREATE INDEX idx_orders_opt ON orders (<필터 컬럼>);

제시된 인덱스 구조를 실제 워크로드와 비교 검토한 후 안전하게 적용하십시오.

관련 주제