MySQL의 인덱스 스캔에 대해 알아보자 (feat. 커버링 인덱스)
어떤 경우에 인덱스를 사용하게 유도할지 말지를 판단하려면 어떻게 인덱스를 이용해서 실제 레코드를 읽는지 알 필요가 있다.MySQL이 인덱스를 이용하는 대표적인 3가지 방법을 알아보자. 인덱스 레인지 스캔가장 대표적인 인덱스 접근 방식으로 나머지 방법 중 가장 빠른 방법이다.인덱스 레인지 스캔은 검색해야 할 인덱스의 범위가 결정됐을 때 사용하는 방식이다. B-Tree 인덱스에서는 루트와 브랜치 노드를 이용해 스캔 시작 위치를 검색하고 그 지점부터 필요한 방향으로 인덱스를 읽어 나간다.인덱스 자체가 정렬되어 있기 때문에 이런 범위 검색 또한 빠르고 정렬된 상태로 레코드를 가져온다. 인덱스 레인지 스캔의 순서를 살펴보면 다음과 같다.인덱스에서 조건을 만족하는 값이 저장된 위치를 찾는다. (인덱스 탐색)1번에서..