본문 바로가기
Q&A2022년 6월 10일1분 읽기

SQL 성능 최적화 기본 방법

오
오수빈
조회 1321댓글 1

DB 쿼리가 느린데, SQL 성능을 최적화하는 기본적인 방법을 알려주세요.

댓글 1

김김영삼4년 전

SQL 성능 최적화 핵심:

1. EXPLAIN으로 실행 계획 확인:

EXPLAIN ANALYZE SELECT * FROM users WHERE email = 'test@test.com';
-- Seq Scan이면 인덱스 필요
-- Index Scan이면 OK

2. 인덱스 추가:

-- WHERE, JOIN, ORDER BY에 자주 쓰이는 컬럼
CREATE INDEX idx_users_email ON users(email);

-- 복합 인덱스 (순서 중요)
CREATE INDEX idx_posts_type_created ON posts(type, created_at DESC);

3. 쿼리 개선:

  • SELECT * 대신 필요한 컬럼만
  • N+1 쿼리 → JOIN 또는 서브쿼리
  • LIKE '%keyword%' → Full-text Search
  • 대량 데이터 → 페이지네이션 (LIMIT/OFFSET)

4. 기타:

  • 커넥션 풀링 (PgBouncer 등)
  • 읽기 전용 레플리카 활용
  • 쿼리 캐싱 (Redis)
Ctrl+Enter로 등록