Database
[MySQL] 옵티마이저 - 기본 데이터 처리
MySQL 서버는 사용자의 요청을 처리하기 위해 1) 데이터를 가공하는 기본 절차 2) 빠른 성능을 보장하기 위한 최적화를 수행합니다. 이번 글에서는 데이터를 정렬하거나 그루핑하는 등의 기본 데이터 가공 기능에 관해 살펴보겠습니다. 풀 테이블 스캔과 풀 인덱스 스캔 풀 테이블 스캔은 인덱스를 사용하지 않고 테이블의 데이터를 처음부터 끝까지 읽는 작업을 의미합니다. 다음과 같은 조건일 때 주로 풀 테이블 스캔을 선택합니다. 테이블의 레코드 건수가 너무 작아 인덱스를 사용하는 것보다 테이블을 스캔하는 것이 빠를 경우(일반적으로 테이블이 페이지 1개로 구성된 경우) WHERE 절이나 ON 절에 인덱스를 이용할 수 있는 적절한 조건이 없는 경우 인덱스 레인지 스캔을 사용할 수 있는 쿼리라고 하더라도 옵티마이저가..