topic난이도 · 약 15

인덱스

조회 성능을 위한 보조 자료구조. 클러스터드 / 비클러스터드, B-tree / Hash / 비트맵.

#DB#인덱스
왜 배우는가

인덱스 선정 기준과 종류가 단답으로 자주 나온다.

종류특징용도
B-트리 / B+트리균형 트리, 범위 검색 빠름일반 인덱스
해시 인덱스등가 검색 O(1)`=` 검색 최적
비트맵 인덱스컬럼 값을 비트로저 카디널리티(성별 등)
클러스터드테이블 자체가 정렬됨테이블당 1개
비클러스터드별도 인덱스 구조여러 개 생성 가능

인덱스 선정 기준 — ① WHERE/JOIN/ORDER BY에 자주 등장 ② 선택도가 높은 컬럼(고유 값 많음) ③ 갱신 빈도가 낮은 컬럼 ④ 크기가 작은 컬럼.

인덱스의 단점 — 삽입/수정/삭제 시 인덱스도 갱신해야 하므로 쓰기 성능 저하. 너무 많이 만들면 오히려 손해.

실기 드릴 2문항
edit실기 드릴 · 단답형

테이블의 물리적 저장 순서 자체가 인덱스 키에 의해 정렬되는 인덱스는?

edit실기 드릴 · 단답형

성별 같은 낮은 카디널리티 컬럼에 적합한 인덱스는?