---
type: template
domain: product
role: Database
status: active
last-reviewed: 2026-07-27
---

# 쿼리·인덱스 계획

> Backend의 실제 접근 패턴과 데이터 분포를 근거로 query와 index를 설계한다. latency 목표는 요구사항정의서의 NFR로 발주사와 합의된 값을 쓴다 — 임의 목표는 검수 기준이 못 된다.

## 쿼리 인벤토리

| 쿼리 ID·유스케이스 | WHERE | JOIN | ORDER BY | 예상 rows·빈도 | latency 목표(NFR 합의값) | pagination |
|---|---|---|---|---|---|---|
| DB-Q-001 |  |  |  |  |  |  |

## 인덱스 후보

| 인덱스 | 대상 컬럼·순서 | 지원 쿼리 | selectivity 근거 | 쓰기·저장 비용 | 중복 여부 | 채택 |
|---|---|---|---|---|---|---|
|  |  |  |  |  |  |  |

## 실행 계획 검증

> EXPLAIN 증거는 성능 관련 검수 이의 제기 시 방어 자료가 된다 — 판정·증거 경로를 남긴다.

| 쿼리 ID | 데이터셋 규모 | EXPLAIN 핵심 | 예상·실측 시간 | scan rows | 판정·증거 |
|---|---|---|---|---|---|
| DB-Q-001 |  |  |  |  |  |

## 운영 고려

| 항목 | 결정 |
|---|---|
| 큰 테이블 index 생성 방식 |  |
| index 생성·제거 lock |  |
| 통계 갱신·vacuum 정책 (발주사 운영 정책과 합의) |  |
| 느린 query 관측 기준 |  |

## 완료 질문

- [ ] 모든 index가 하나 이상의 실제 쿼리와 연결되는가?
- [ ] 복합 index 컬럼 순서가 filter·sort 패턴을 반영하는가?
- [ ] full scan과 N+1 위험을 Backend와 확인했는가?
- [ ] 읽기 개선과 쓰기·저장 비용의 tradeoff를 기록했는가?
- [ ] 대형 테이블은 CONCURRENTLY 등 무잠금 옵션을 검토했는가?
- [ ] 운영 데이터 규모·분포를 발주사에서 받았는가? 미제공이면 추정 근거와 요청 기록을 남겼는가?

## 미결·다음 소비자

- 추가 검증 필요 항목:
- Backend 확인자:
- DevOps 적용 의존성:
