복합 인덱스 컬럼 순서의 진짜 1순위는 카디널리티가 아니었다 TL;DR복합 인덱스를 설계할 때 "카디널리티 높은 컬럼을 앞에"라는 규칙을 따랐다. 근데 EXPLAIN을 찍어보니 인덱스를 걸었는데도 filesort가 사라지지 않았다. 원인을 파보니 컬럼 순서의 진짜 1순위는 카디널리티가 아니라 조건 유형(등호 vs 범위)이었다. B+Tree 리프 노드의 정렬 원리를 이해하고 나서야 인덱스 설계가 풀렸다."카디널리티 높은 컬럼을 앞에" 이 규칙을 의심 없이 따랐다상품 목록 API에 복합 인덱스를 걸어야 했다. products 테이블 약 20만 건, 자주 쓰이는 WHERE 조건은 status와 brand_id.brand_id: 카디널리티 500 (고유 값 500개)status: 카디널리티 3 (ACTI..