반응형
SQL Server를 사용할 때 쿼리 성능을 분석하거나 병목 구간을 찾아야 하는 경우가 많습니다.
이때 가장 강력하고 직관적인 도구 중 하나가 바로 SSMS(SQL Server Management Studio)의 실제 실행 계획(Actual Execution Plan) 기능입니다.
🧩 실행 계획이란?
실행 계획(Execution Plan)은 SQL Server가 쿼리를 실행하기 위해 어떤 절차를 밟는지를 보여주는 지도(Map)와 같습니다.
데이터를 가져오기 위해 어떤 인덱스를 사용할지, 어떤 조인 방식을 택할지 등을 시각적으로 표현해줍니다.
- 실제 실행 계획(Actual Execution Plan): 쿼리가 실행된 후, SQL Server가 실제로 사용한 실행 절차를 보여줍니다.
- 추정 실행 계획(Estimated Execution Plan): 쿼리를 실행하지 않고 예상 경로만 보여줍니다.
⚙️ 실제 실행 계획 보기 방법
- SSMS에서 쿼리 창 열기
- 실행할 SQL 문 작성
- 상단 메뉴에서
[실행] 버튼 옆의 [실제 실행 계획 포함] 아이콘(또는Ctrl + M) 클릭 - 쿼리 실행 (
F5) - 결과 탭 하단에 “실행 계획” 탭이 생성됩니다.

🔍 실행 계획 해석 예시
각 노드는 SQL Server가 수행한 작업을 의미하며, 왼쪽에서 오른쪽으로 데이터 흐름이 전달됩니다.

- Index Seek: 인덱스를 활용한 효율적 검색
- Index Scan / Table Scan: 전체 테이블을 훑는 방식 → 성능 저하의 원인
- Nested Loops / Hash Match / Merge Join: 조인 연산 방식
- Sort, Filter: 정렬 및 필터링 연산
노드를 마우스로 올리면 실행 비용(%)과 처리된 행(row) 수, 사용된 인덱스 등의 정보도 확인할 수 있습니다.
⚡ 실행 계획을 활용한 성능 개선 팁
- Table Scan이 많다면 👉 인덱스 생성 고려
- 조인 순서나 조건절 필터링 순서 최적화
- 비효율적 쿼리 재작성
- 통계 갱신 (UPDATE STATISTICS) 수행
이러한 분석을 통해 쿼리 속도를 상당히 줄일 수 있을 것입니다!
🧠 마무리
SSMS의 실제 실행 계획 기능은 단순히 결과를 보는 도구가 아니라,
SQL Server 성능 최적화의 핵심 도구입니다.
눈에 보이지 않던 성능 병목을 한 눈으로 볼 수 있는 좋은 기능이라는 것을 알았습니다.
복잡한 쿼리문 작성시 효율적, 시각적으로 볼 수 있기에 SQL튜닝시 적극 활용하는 것이 좋을 것 같습니다!
반응형