Re: Update lentos

From: Miguel Angel Hernandez Moreno <miguel(dot)hdz(dot)mrn(at)gmail(dot)com>
To: Ernesto Quiñones <ernestoq(at)gmail(dot)com>
Cc: Lista PostgreSql <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Update lentos
Date: 2010-06-07 02:05:59
Message-ID: AANLkTikQPLIv3oFVaOUokZXaM952DglxWoWxTrr89A6G@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

*
a mi alguna vez me paso algo así
el problema fue una mezcla de (1) no hacer full vacumm con cierta
regularidad a la tabla gigantesca que tenia (2) tener demasiadas
relaciones en esa tabla, lo cual hacia que un update masivo removiera
muchas cosas en la db*

de hecho tengo un crontab que hace el full todos los dias y un analyze
cada hora a la tabla que estoy accediendo
*

> effective_cache_size esta en 21GB cuanto ram tienes? si en verdad
> tienes mas de 21GB probablemente puedes subirle un poco a
> shared_buffers
>
> tengo 32 RAM y 16 SWAP
>

32GB supongo, si este es un servidor dedicado podrias poner 8GB en
shared_buffers y probar de ahi hacia abajo*

si tengo 32 GB de RAM y 16 GB RAM

*
>> work_mem = 1GB # min 64kB
>
> esto me parece excesivamente alto
>
> cuanto recomiendas y por que
>

4MB? esto determina la cantidad de memoria que cada operacion puede
usar para ordenamiento, hash y otras cosas...
es decir que cada conexion concurrente podria utilizar hasta esa
cantidad de memoria por operacion*

ntonces voy a usar 4 MB, me parece correcto por que estoy teniendo 1000
conexiones concurrentes en ocaciones un poco mas

*> y como deberian quedar los checkpoint_segments si tengo
> mas de 20 inserccion por SEGUNDO, la verdad sigue por
> default y segun lei ahi podria radicar el problema
>

como sabes que son mas de 20 inserciones por segundo? de todos modos
yo aumentaria checkpoint_segments y checkpoint_timeout*

Se que tengo 20 inserciones por segundo ya que tengo 5 mil y un poco mas
de aplicaciones que insertan registros a 4 servers que tengo (osea como 1250
por servidor) y cada minuto en promedio (30 segundos o hasta 2 minutos) cada
aplicacion hace una insercion de la informacion

1250 inserciones / 60 segundos ~=20 inserciones / segundo

de hecho si tengo un triger que me particiona la tabla por dia para nada mas

tener muchas tablas de poco millones de registros y no una tabla de muchos
millones.

y ntoncs a cuando aumentarias el * checkpoint_segments???*

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Guillermo Villanueva 2010-06-07 14:25:51 Re: duda sobre constraint
Previous Message Ernesto Quiñones 2010-06-07 01:48:16 Re: Update lentos