Cuantos locks son muchos locks?

From: Mario Sileone <msileone(at)easymail(dot)net(dot)ar>
To: "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Cuantos locks son muchos locks?
Date: 2010-07-16 17:34:33
Message-ID: 4C409829.5000600@easymail.net.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Estimada lista:
Tengo un problema que estimo es de concurrencia. Trataré de ser lo
más breve posible.

Tengo un servidor Dell con 4 procesadores dualcore y 8 GB de RAM, 3
discos en RAID 1 con Postgres 8.2.7 y Apache con la página en el mismo
servidor.

Tengo un split de tablas por mes, como una vez me iluminaron aqui, con
aprox. 12.000.000 de registros mensuales, el movimiento diario es de
400.000 registros de crecimiento, y las tengo con contraint_exclusion en
on.
Asimismo tengo dos tablas que realizan updates a razón de 300 veces por
minuto, y varias vistas sobre estas tablas, con triggers y SELECTS sobre
tablas dentro de ellos.
las aplicaciones que hacen los updates (son 4) lo hacen asíncronamente.
El tema está en que cuando se inician las actividades de clientes entre
las 09 AM y las 10 aprox. se produce el problema. el load average del
servidor me ha subido hasta 20, con procesador IDLE en buen porcentaje y
por supuesto, un 40% promedio en WAIT. Cuando reviso pg_lock me
encuentro con que se llega hasta más de 6000 registros de bloqueo, y
hasta 147 conexiones simultáneas. La consulta que se ejecuta cada 1
minuto por parte de los clientes utiliza las tablas con gran update.
No tengo Swap in ni Swap out, y el porcentaje de hits en el buffer
es del 85% promedio (baja un poco en la hora pico).
No tengo Idle in transaction.

¿Puedo estar haciendo algo mal yo tanto en diseño de base de datos
o es que al nivel de carga arriba mencionado estoy chico de servidor?
¿un pool de conexiones ayudaría?

Tengo información disponible de pgstat, uptime, vmstat, pg_lock,
configuración, consultas, explains, etc, por si necesitan, pero no
termino de llegar a una conclusión por ignorancia la verdad.

Desde ya muchas gracias por su tiempo y perdón por lo extenso del mail,
traté de resumir lo más importante.

Saludos Cordiales

Mario Sileone.

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Rodriguez Fernando 2010-07-16 17:48:54 Re: Consultas sobre salida en el log
Previous Message Desarrollo Escuintla 2010-07-16 15:24:13 Re: postgreSQL, netbeans, conexion remota.