Caros colegas,

Estou utilizando o postgresql para realizar testes para coleta de dados 
para minha pesquisa de mestrado. Preciso saber qual o custo (quantidade 
de acessos em disco) de uma determinada consulta sql. Desta forma, 
utilizei o comando EXPLAIN ANALYZE seguido do comando select. A pergunta 
é a seguinte: Para que eu saiba o custo total da consulta, devo somar 
todas as etapas do custo? Pelos testes que realizei os valores de custo 
são apresentados por etapas. Qual é a forma correta de interpretar os 
dados, visto que o gerenciador apresenta duas estatísticas de custo para 
cada etapa? Envio um exemplo para análise:

"QUERY PLAN"
"Aggregate  (cost=212532.49..212532.51 rows=1 width=16) (actual 
time=6324.557..6324.558 rows=1 loops=1)"
"  ->  Hash Join  (cost=72.51..212276.40 rows=102437 width=16) (actual 
time=2.205..6066.745 rows=145004 loops=1)"
"        Hash Cond: (lineorder.lo_orderdate = date.d_datekey)"
"        ->  Seq Scan on lineorder  (cost=0.00..208489.49 rows=717340 
width=20) (actual time=0.026..4419.030 rows=955923 loops=1)"
"              Filter: ((lo_discount >= 1::double precision) AND 
(lo_discount <= 3::double precision) AND (lo_quantity < 25))"
"        ->  Hash  (cost=67.95..67.95 rows=365 width=4) (actual 
time=1.994..1.994 rows=365 loops=1)"
"              ->  Seq Scan on date  (cost=0.00..67.95 rows=365 width=4) 
(actual time=0.140..1.365 rows=365 loops=1)"
"                    Filter: (d_year = 1993)"
"Total runtime: 6324.647 ms"

Abraço a todos,
Ricardo Neves.


_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a