워크로드 질문
우선 후보
맞는 이유
피해야 할 때
범위·정렬·동등 검색이 섞이는가?
B+Tree
정렬된 키로 =, BETWEEN, ORDER BY를 함께 줄인다.
쓰기 부담만 있고 조회 패턴이 불명확할 때
정확히 같은 키만 매우 자주 찾는가?
Hash
키를 버킷으로 바로 보내 동등 검색을 빠르게 한다.
범위 검색, 정렬, prefix 검색이 필요할 때
낮은 카디널리티 조건을 분석에서 결합하는가?
Bitmap
status, region 같은 비트 배열을 AND/OR로 합친다.
갱신이 많은 OLTP 테이블
쓰기량이 많고 나중에 묶어 정리할 수 있는가?
LSM-Tree
메모리/로그에 먼저 받고 compaction으로 정리한다.
즉시 일관된 범위 읽기 비용이 더 중요할 때
핵심: 인덱스 이름을 외우기보다 쿼리의 축이 범위, 동등, 분석 결합, 쓰기 처리량 중 어디에 있는지 먼저 고른다.