데이터베이스에서 대규모 데이터를 다룰 때, 정렬 작업은 필수적이다. MySQL에서 정렬 작업을 수행하는 주요 메커니즘 중 하나가 바로 filesort이다. 이는 테이블 데이터를 정렬해야 하지만, 해당 작업을 인덱스를 통해 처리하지 못할 경우 사용된다. 이름은 filesort이지만, 정렬이 반드시 디스크에서 수행되는 것은 아니며, 정렬 작업은 메모리에서 시작하고 필요한 경우 디스크로 이동된다. filesort의 동작 원리MySQL이 정렬 작업을 처리할 때, 다음 두 가지 방식 중 하나를 선택한다. 1. 인덱스 기반 정렬ORDER BY나 GROUP BY 절에서 사용된 컬럼이 인덱스에 포함된 경우, 정렬 작업은 인덱스를 활용해 효율적으로 처리된다.filesort가 사용되지 않는다. 2. filesort 기반 ..
인덱스
Multi Column Index란?데이터베이스에서 성능 최적화는 매우 중요한 요소이다. 특히 대량의 데이터가 저장된 테이블에서 빠르게 데이터를 조회하려면 인덱스(Index)를 활용해야 한다. 그중에서도 Multi-Column Index(다중 열 인덱스)는 데이터베이스에서 두 개 이상의 열(column)을 결합하여 효율적으로 데이터를 검색할 수 있게 해주는 인덱스이며, 이를 통해 복합적인 조건의 검색 속도를 향상시킬 수 있다. Multi Column Index의 특징Multi Column Index는 두 개 이상의 컬럼을 결합하여 하나의 인덱스를 생성하는 방식이다. 단일 컬럼 인덱스와 달리, 특정 컬럼의 조합으로 이루어진 검색 조건에 대해 최적화된 성능을 제공한다. 1. 왼쪽 선행 열 원칙(Leftmo..