Estimados, buenas tardes.
Estoy tratando de optimizar el WAL en una base de datos. De acuerdo a la información que recopilé, seteando el checkpoint_segment en 1 me realizaba una escritura cada aprox. 20 segundos (16 MB). Noté que en estos casos caía por unos instantes la performance del servidor, e inclusive veia algunos inserts y updates waiting, y el log me avisaba que deberia incrementarlo. Leyendo en la web sobre la optimización del WAL encontré que podria ser mejor dejar shared_buffers mas bajo de lo óptimo para mi sistema, y elevar el numero de checkpoint_segments como asi tambien el checkpoint_timeout.

Actualmente cambie el shared_buffers a 2GB y el effective_cache_size a 5GB, y note una performance mucho mejor, pero de acuerdo a la documentacion que he encontrado, no conviene tener un shared_buffer tan alto si el sistema tiene mucha carga de escritura.

Tienen alguna recomendación al respecto? si aumento los checkpoint_segments a valores mas altos con la config actual, sera muy pesada la escritura del WAL en los checkpoint?

Mi sistema tiene 8GB RAM, y un RAID 10, con discos relativamente veloces, y 2 procesadores quadcore

max_connections en 200
work_mem en 40MB

agradezco su tiempo y sugerencias.

Saludos

Mario Sileone.




-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a