Re: Out of free buffers - Tuning

From: Juan Pablo GO <mozstyle2002(at)gmx(dot)net>
To: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: Juan Manuel Rios <juanmanuelrios(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Out of free buffers - Tuning
Date: 2005-07-26 18:13:50
Message-ID: 42E67D5E.7080805@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

A propósito de..., aquí hay documentación actualizada al respecto
http://www.ca.postgresql.org/docs/momjian/hw_performance/0.html

Seria interesante saber de Ustedes, experiencias respecto del tuning de
Postgresql, para lo que es necesario observar dos aspectos importantes,
el seteo del kernel y postgresql tal como Alvaro lo ha indicado. dado
que por lo general en Linux la cantidad máxima de un segmento de memoria
compartida es solo de 32MB (cat /proc/sys/kernel/shmmax / 1024)...lo
que es insuficiente. Además, según la documentación de postgresql si
este tamaño es seteado de forma incorrecta (tamaño de Shared_buffers v/s
shmmax) es probable que los beneficios reales no sean lo que esperamos.

Otra cosa digna de evaluar, son las variables del motor
(enable_hashjoin, enable_mergejoin, enable_indexscan,etc) solo hace
falta hacer pruebas para darse cuenta del beneficio que podemos obtener.
Por otra parte, la utilización de FSYNC = false puede ser de gran ayuda
( pero no recomendable ) solo para una infraestructura de hardware que
por lo menos disponga de una UPS decente, con el consiguiente riesgo de
sufrir de alguna corrupción ante fallas del sistema operativo (y según,
entiendo sólo a causa de este último). Para algunos, FSYNC=false sólo
debe ser utilizado para cargas masivas de datos...

Les coloco el caso de una maquina con doble procesador, SCSI, 4GB RAM.

¿como sacarle el jugo a los recursos hardware para que postgresql
literalmente" vuele"? (aún más)

Es dificil (se puede llegar a una media) si pensamos que incluso la
forma de escribir las consultas puede influir... por lo general este es
un factor muy importante a tener en cuenta.

Salu2
Juan Pablo GO.

Alvaro Herrera wrote:

>On Tue, Jul 26, 2005 at 01:56:38PM -0300, Juan Manuel Rios wrote:
>
>
>
>>Revisando los logs del postgres encuentro que al ejecutar funciones
>>recursivas o en momentos donde la carga del servidor aumenta, recibo
>>mensajes del tipo "out of free buffers" y la ejecucion termina
>>abruptamente. Revisando los archivos de la lista ayuda de postgres he
>>visto que hay que configurar unos parametros en el postgresql.conf
>>para aumentar la disponibilidad de memoria y de shared_buffers para
>>postgres. A estos parametros los he mantenido como estaban por
>>defecto.
>>
>>
>
>Cuanto tienes en shared_buffers, el valor por defecto? Si mal no
>recuerdo en ese tiempo era 64, o sea 64 * 8 kb = 512 kB. Ponle,
>digamos, 1000 (8 MB), o 10000 (80 MB), y luego nos cuentas.
>
>Vas a tener que jugar con kernel.shmmax. Para eso, usa sysctl y
>/etc/sysctl.conf.
>
>
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2005-07-26 19:49:15 Re: [pgsql-es-ayuda] bien, esta es mi duda sobre almacenamiento de datos grandes en una columna
Previous Message Martín Marqués 2005-07-26 17:34:42 Re: Out of free buffers