EXPLAIN 명령의 시간 형식 이해-Postgres


14

주어진 쿼리에서 EXPLAIN ANALYZE 명령을 실행할 때 출력 시간 값을 해석하는 데 어려움을 겪고 있습니다. 예를 들어 (실제 시간 = 8163.890..8163.893)입니다. 내부 소수는 반복되는 문자를 나타 냅니까? 죄송합니다.이 질문에 대한 답이있을 수도 있지만 결과를 올바르게 해석하고 싶습니다.

   ->  GroupAggregate  (cost=2928781.21..2929243.02 rows=1 width=27712) (actual time=8163.890..8163.893 rows=1 loops=1)

답변:


19

actual time=8163.890..8163.893 방법

해당 단계 ( "시작")를 초기화하는 데 8163.890ms 걸렸습니다
. 전체 단계를 실행하는 데 8163.893ms 걸렸습니다.

따라서이 경우 거의 모든 작업이 해당 단계의 시작 단계에서 수행되었습니다.

편집 :
동일한 논리가 비용 정보에 "적용됨"

cost=2928781.21..2929243.02 방법:

이 단계를 초기화하는 데 드는 비용은 다음과 같습니다. 2928781.21
단계를 수행하는 데 드는 비용은 다음과 같습니다. 2929243.02

( '비용'에는 단위가 없습니다. 임의의 값입니다.)

이것은 또한 여기에 설명되어 있습니다 : http://www.postgresql.org/docs/current/static/using-explain.html


정보와 링크에 감사드립니다-나는 또한 이 문서가 다소 구식이기는하지만 도움 된다고 생각했습니다.
Jmoney38

링크 주셔서 감사합니다. 문서는 실제로 구식이 아닙니다. 최신 버전의 PostgreSQL에는 계획에 더 많은 정보가 표시되지만 기본 원칙은 여전히 ​​적용됩니다.
a_horse_with_no_name

중첩 루프에서 이것을 사용하여 Explain 분석을 어떻게 해석 (actual time=0.002..0.002 rows=0 loops=119878)합니까? 루프 당 평균이 0 행으로 반올림되어 도움이되지 않는다고 가정하지만이 시간이 실제로 실행 비용이 너무 간단하여 시작 비용으로 구성되어 있음을 의미합니까?
Davos

5

첫 번째 숫자는 해당 단계에서 첫 번째 행을 반환하는 데 걸린 시간입니다. 두 번째 숫자는 마지막 행을 반환하는 데 걸린 시간입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.