Re: Ventajas en el fill factor?

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>
Cc: juan <juanramirez(at)cajazacate(dot)com(dot)sv>, pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Ventajas en el fill factor?
Date: 2009-07-10 23:21:47
Message-ID: 20090710232147.GK9382@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Jaime Casanova escribió:

> Cuando postgres actualiza un registro lo que hace es marcar la version
> actual como "ya no es valida" y crea una nueva version del registro al
> final de la tabla marcada como "esta es valida"... si la tabla tiene
> indices se crea una entrada hacia el nuevo registro en cada indice
> pero se mantiene el anterior...
>
> entonces cuando haces una consulta que hace uso de un indice, puede
> que encuentre varias entradas que dicen ser el registro que se busca
> pero en diferentes lugares en la tabla (posiblemente en diferentes
> paginas del disco)... lo que el FILLFACTOR es reservar una parte de
> cada pagina para poner ahi las versiones nuevas de los registros,
> evitando tener que acceder varias veces al disco...

Otro detalle a tener en cuenta es HOT (sólo desde 8.3 en adelante).
Cuando haces un UPDATE de una tupla y hay espacio libre en la misma
página, en vez de crearse un nuevo puntero en el índice, se marca la
tupla en la tabla y en el índice no se inserta nada. El único
requerimiento es que en la página debe haber espacio libre para insertar
la nueva tupla de la tabla. Para ayudar a satisfacer esta condición un
mayor porcentaje del tiempo, se puede reservar un espacio con el
fillfactor.

En todo caso hay que tener claro que un fillfactor muy bajo es malo para
el rendimiento porque hay espacio en cache (shared buffers y en el cache
del kernel) que no se aprovecha. Por lo tanto no hay que bajarlo mucho.

--
Alvaro Herrera http://www.amazon.com/gp/registry/DXLWNGRJD34J
"La tristeza es un muro entre dos jardines" (Khalil Gibran)

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Segurinfo Col 2009-07-11 02:42:26 RE: seguridad
Previous Message Marcos Ortiz Valmaseda 2009-07-10 23:06:42 Re: seguridad