----- Mensaje original -----
> De: "Edwin De La Cruz" <edwinsp...@gmail.com>
> Para: pgsql-es-ayuda@postgresql.org
> CC: "Gerardo Herzig" <gher...@fmed.uba.ar>
> Enviados: Miércoles, 16 de Septiembre 2015 16:17:18
> Asunto: Re: [pgsql-es-ayuda] Criterio para crear indices
> 
> El 16/09/15 a las 13:01, Gerardo Herzig escribió:
> > /*
> > >FOR idevent_for_close_on_restore IN SELECT idevent FROM events
> > >WHERE
> > >ideventtype = ANY(et.auto_close_on_event_defined)
> > >AND status = 0 AND idaccount = NEW.idaccount AND zu = NEW.zu AND
> > >idevent != NEW.idevent LOOP
> > >
> > >INSERT INTO event_comments(
> > >comment_event, status,
> > >idevent)
> > >VALUES ('Event closed for restoring event idevent '||NEW.idevent,
> > >7,
> > >idevent_for_close_on_restore);
> > >
> > >END LOOP;
> > >*/
> 
> Si dejo el codigo como se muestra a continuacion:
> 
> FOR idevent_for_close_on_restore IN SELECT idevent FROM events WHERE
> ideventtype = ANY(et.auto_close_on_event_defined)
> AND status = 0 AND idaccount = NEW.idaccount AND zu = NEW.zu AND
> idevent != NEW.idevent LOOP
> /*
> INSERT INTO event_comments(
> comment_event, status,
> idevent)
> VALUES ('Event closed for restoring event idevent '||NEW.idevent, 7,
> idevent_for_close_on_restore);
> */
> END LOOP;
> 
> igual se vuelve muy lento el script, probé hace unas semanas atras
> con ANALIZE EXPLAIN y se demoró unos 40 segundos en correr, y eso
> que solo era prueba. Lo que pude ver es que recorre todas las
> particiones y las particiones de las particiones de la tabla events,
> que de momento como dije son mas de 40 millones de registros
> repartidos en unas 15 tablas.
> El indice lo creo solo en la tabla padre o en todas las hijas, creo
> que lo logico seria en todas las hijas, pues son las que contienen
> datos.
> 

Exacto, conviene hacerlo para todas las hijas.

Puede que aun tenga que recorrer todas las particiones (depende del criterio qe 
hayas usado para particionar), pero la espectativa es que lo haga mas rapido si 
hay indices.

Saludos,
Gerardo

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a