Re: Problemas con delete

From: utaladriz(at)exe(dot)cl
To: Jaime Casanova <systemguards(at)yahoo(dot)com>
Cc: Lista PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Problemas con delete
Date: 2004-07-23 00:24:50
Message-ID: 1090542290.41005ad249d5b@www.correo.exe.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Ya lo resolví pero igual respondo tus preguntas :

La verdad es que no he hecho un vacuum.
Las tablas tiene alrededor de 500.000 registros todas.
Pero obtuve el mismo resultado al hacer un pg_dump y recrear la base de datos.

La solución :
Por otro lado quizas por estar acostumbrado a otras bases de datos no había
creado índices para las FK base de datos. Me di el trabajo de crear un indice
para cada FK de todas las tablas, con eso obtuve tiempos casi instantaneos
para borrar 65000 registros.

Saludos a todos

Mensaje citado por Jaime Casanova <systemguards(at)yahoo(dot)com>:

> Hi,
>
> Otra pregunta:
> cuantos registros tiene tu tabla?
> Haz realizado vacuum ultimamente?
>
> Atentamente,
> Jaime Casanova
>
> --- utaladriz(at)exe(dot)cl escribió: > Claro aqui va :
> >
> > psql> explain delete from entidad where id >= 973721
> > and id <= 998499;
> > QUERY PLAN
> > ------------
> > Seq scan on entidad (cost=0.0 .. 10053.17 rows=1525
> > width=6)
> > Filter ; ((id >= 973721) AND (id <= 998499));
> >
> >
> > Ojo el resultado del explain lo escribi porque la
> > maquina esta aislada
> >
> > Saludos
> >
> >
> > Mensaje citado por Jaime Casanova
> > <systemguards(at)yahoo(dot)com>:
> >
> > > Hi,
> > >
> > > Podrias, por favor, enviar el resultado de un
> > explain
> > > sobre un select hecho con ese where? o del mismo
> > > delete?
> > >
> > > Atentamente,
> > > Jaime Casanova
> > >
> > > --- utaladriz(at)exe(dot)cl escribió: > Estimados tengo
> > un
> > > problema que no he podido
> > > > resolver.
> > > >
> > > > tengo una tabla entidad cuya Pk es la columna id
> > > > cuyo valor corresponde a un
> > > > sequence.
> > > >
> > > > Esta tabla posee una FK que es el campo
> > id_contrato
> > > > que corresponde al campo
> > > > id en la tabla contrato.
> > > >
> > > > El asunto es que al hacer un delete de la tabla
> > > > entidad de las siguientes
> > > > formas :
> > > >
> > > > delete from entidad where id >= 1000 and id <=
> > > > 30000;
> > > >
> > > >
> > > > Es decir borro, ocupando como filtro la PK, este
> > > > proceso de borrar consume
> > > > cerca de 90% de CPU y lo he dejado correr por
> > mas de
> > > > 20 minutos y
> > > > definitivamente no termina. A mi modo de ver 20
> > > > minutos debería ser tiempo
> > > > suficiente aún cuando no fuera el filtro por PK
> > y
> > > > tuviera que hacer una
> > > > busqueda secuencial.
> > > >
> > > >
> > > > Mi problema partio cuando trate de hacer lo
> > > > siguiente :
> > > >
> > > > delete from entidad where id_contrato in (select
> > id
> > > > from contrato where
> > > > id_concesionaria=4)
> > > >
> > > > Primero asumi que este era el problema un delete
> > con
> > > > un select en el where,
> > > > pero despues probe con cualquier delete con
> > filtro y
> > > > los tiempos son
> > > > horrorosos.
> > > >
> > > > Modifique checkpoint_segmentes, shared_buffers,
> > etc.
> > > > etc.
> > > >
> > > > En definitiva en este minuto agote mis
> > posibilidades
> > > > racionales de entender
> > > > que es lo que esta sucediendo.
> > > >
> > > > Otro dato el problema en realidad me sucede con
> > > > tdoas las tablas por eso creo
> > > > que el asunto tiene que ver con la configuracion
> > del
> > > > postgres
> > > >
> > > > Saludos
> > > >
> > > >
> > > >
> > > > ---------------------------(end of
> > > > broadcast)---------------------------
> > > > TIP 7: no olvides aumentar la configuración del
> > > > "free space map"
> > > >
> > >
> > >
> >
> _________________________________________________________
> > > Do You Yahoo!?
> > > Información de Estados Unidos y América Latina, en
> > Yahoo! Noticias.
> > > Visítanos en http://noticias.espanol.yahoo.com
> > >
> >
> >
> >
> >
> >
>
> _________________________________________________________
> Do You Yahoo!?
> Información de Estados Unidos y América Latina, en Yahoo! Noticias.
> Visítanos en http://noticias.espanol.yahoo.com
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: ¿Has leído nuestro extenso FAQ?
>
> http://www.postgresql.org/docs/faqs/FAQ.html
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message utaladriz 2004-07-23 00:28:06 Re: consulta - herramienta olap
Previous Message Jose E. Blanco 2004-07-23 00:14:27 Re: nmero maximo de registros...