실행계획 분석 (EXPLAIN 시각화)

브라우저 안에서만 처리됩니다. 입력한 내용과 선택한 파일은 서버로 전송되지 않습니다. 익명 방문 통계만 집계합니다.

사용법

  1. DB에서 EXPLAIN (ANALYZE, BUFFERS) — MySQL은 EXPLAIN FORMAT=JSON — 을 실행합니다.
  2. 출력 전체를 붙여넣고 분석을 누르면 트리와 병목 Top 5가 나옵니다.
  3. 붉게 칠해진 노드와 ⚠ 경고부터 눌러서 확인하세요.

자주 묻는 질문

실행계획이 서버로 전송되나요?

아니요. 실행계획에는 테이블·컬럼·조건식이 그대로 드러나기 때문에, 이 도구는 업로드형 서비스와 달리 모든 파싱과 분석을 브라우저 안에서만 합니다.

어떤 포맷을 지원하나요?

PostgreSQL의 텍스트·JSON(FORMAT JSON) 출력과 MySQL의 EXPLAIN FORMAT=JSON을 지원합니다. MySQL JSON에는 실측 시간이 없어서 비용(cost) 기준으로 분석합니다.

노드별 시간이 정확한가요?

노드의 배타 시간은 자기 시간에서 자식 시간을 뺀 값입니다. 병렬 실행이나 CTE가 끼면 이 계산이 근사가 되는데, 이는 실행계획 포맷 자체의 한계로 다른 도구들도 동일합니다.

EXPLAIN과 EXPLAIN ANALYZE는 뭐가 다른가요?

EXPLAIN은 계획만 세우고, ANALYZE를 붙이면 쿼리를 실제로 실행해 실측 시간·행수를 얻습니다. 병목 분석에는 ANALYZE 출력이 훨씬 유용하지만, 쓰기 쿼리는 실제로 실행되니 주의하세요.