인덱스와 B-tree
인덱스와 B-tree
B-tree 인덱스 구조
- 정렬된 상태 유지 → 범위 검색에 유리
- 노드 하나에 여러 키 → 디스크 I/O 최소화
- 높이 3-4면 수천만 건도 3-4번 탐색으로 조회
인덱스 종류
| 종류 | 특징 | 용도 |
|---|---|---|
| B-tree | 범위, 정렬 | 대부분 |
| Hash | 정확히 일치만 | 등호 검색 |
| 복합 인덱스 | 여러 컬럼 | WHERE 조건 최적화 |
| 커버링 인덱스 | 인덱스만으로 응답 | 조회 최적화 |
실무 포인트
EXPLAIN ANALYZE로 쿼리 플랜 확인 필수- 인덱스가 많으면 쓰기(INSERT/UPDATE) 성능 하락
- WHERE절 순서와 복합 인덱스 컬럼 순서 일치시키기
- Q.인덱스를 걸면 왜 빨라지나요? 내부 구조를 설명해주세요
- Q.인덱스를 무조건 많이 걸면 좋은가요?
- Q.복합 인덱스에서 컬럼 순서가 중요한 이유는?