Skip site navigation (1) Skip section navigation (2)

RE: Agotamiento del Espacio en Disco al Ejecutar Conulta

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: A J <anxusgo(at)hotmail(dot)com>
Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Agotamiento del Espacio en Disco al Ejecutar Conulta
Date: 2012-02-09 19:15:29
Message-ID: 1328814583-sup-3209@alvh.no-ip.org (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Excerpts from A J's message of mié feb 08 19:20:11 -0300 2012:
> 
> > Excerpts from A J's message of mié feb 08 08:45:09 -0300 2012:> 
> > > El espacio libre en disco que tengo en el PC asciende a 150 GBs, por lo que me parece suficiente para que Postgres pueda realizar la consulta. Más aún, cuando anteriormente he podido realizar consultas similares a ésta sin ningún tipo de problema. Es por esto último por lo que me da que pensar que algo no está funcionando bien en mi server. Podría deberse a una configuración errónea en el archivo postgres.conf? Les detallo aquí las tablas que intervienen en la consulta y el código sql de dicha consulta:
> > 
> > > Tablas utilizadas en la consulta:
> > > TABLA: normalized_coup -- alrededor de 150 millones de registros   IDJ_ORIG bigint   IDJ_DEST bigint   COUPLING bigint   IDJ_SAHRED bigint
> > > TABLA: normalized_cocit -- alrededor de 130 millones de registros   IDJ_ORIG bigint   IDJ_DEST bigint   COCITATION bigint   IDJ_SAHRED bigintCódigo SQL utilizado en la consulta:
> > > SELECT   normalized_coup."IDJ_ORIG",   normalized_coup."IDJ_DEST",   normalized_cocit."COCITATION",   normalized_coup."COUPLING"INTO  JOIN_coup_cocitFROM   normalized_coup INNER JOIN normalized_cocit ON (normalized_coup."IDJ_ORIG" = normalized_cocit."IDJ_ORIG") AND  (normalized_coup."IDJ_DEST" = normalized_cocit."IDJ_DEST") ;
> > 
> > 
> > Hm, ¿podrías mostrar un explain de la consulta?

> Espero que sea esto lo que necesitas. Perdón por la tardanza. Ahí va el Explain:

Sí, esto era.  La verdad es que el plan es malo pero quizás simplemente
no pueda hacerlo mejor.

Observa que en el plan hace un sort de cada tabla, por lo tanto el
espacio que necesita es mínimo la suma de los tamaños de ambas.  Aunque
como además tiene un Materialize quizás necesite una segunda copia de
una de las tablas, pero no estoy muy seguro de esto.

¿No tienes índices en ninguno de los campos IDJ_DEST ni IDJ_ORIG de las
tablas, verdad?  Si tuvieras índices en ambos en al menos una de las
tablas, creo que podría intentar hacer un nested loop y evitarse el
costo (y espacio en disco) de tener que ordenar ambas tablas.

-- 
Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>

In response to

pgsql-es-ayuda by date

Next:From: Juan Carlos Ramirez ZambranoDate: 2012-02-09 19:32:06
Subject: Re: Ayuda sobre problema de replicacion
Previous:From: Marcos OrtizDate: 2012-02-09 17:45:36
Subject: Re: Consulta Capos tipo Bytea

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group