인덱스 관련 최적화가 출력하는 메시지

Extra 칼럼

책너두 6기 47일차

백은빈, 이성욱의 Real MySQL 8.0 1권 p.480 ~ p.484

내용정리

10 실행계획

10.3 실행계획분석

10.3.12 Extra 칼럼

10.3.12.13 Using index condition

인덱스 컨디션 푸시 다운(Index condition pushdown) 최적화를 사용하면 표시된다.

10.3.12.14 Using index for group-by

GROUP BY 처리가 인덱스를 이용할 때 표시

10.3.12.14.1 타이트 인덱스 스캔(인덱스 스캔)을 통한 GROUP BY 처리

AVG(), SUM(), COUNT() 처럼 조회하려는 값이 모든 인덱스를 다 읽어야 할 때는 필요한 레코드만 듬성듬성 읽을 수가 없다. 이럴 떄는 메시지가 출력되지 않는다.

10.3.12.24.2 루스 인덱스 스캔을 통한 GROUP BY 처리

단일 칼럼으로 구성된 인덱스에서는 그루핑 칼럼 말고는 아무것도 조회하지 않는 쿼리에서 루스 인덱스 스캔을 사용할 수 있다.

10.3.12.25 Using index for skip scan

인덱스 스킵 스캔 최적화를 사용하면 표시

10.3.12.26 Using join buffer(block nested Loop), Using join buffer(Batched Key Access), Using join buffer(hash join)

조인이 수행될 때 드리븐 테이블의 조인 칼럼에 적절한 인덱스가 있다면 아무런 문제가 되지 않는다. 하지만 드리븐 테이블에 검색을 위한 적절한 인덱스가 없다면 MySQL 서버는 블록 네스티드 루프 조인이나 해시 조인을 사용한다. 블록 네스티드 루프 조인이나 해시 조인을 사용하면 MySQL 서버는 조인 버퍼를 사용하는데 이 때 위 메시지가 표시된다.