From: | Emanuel Calvo Franco <postgres(dot)arg(at)gmail(dot)com> |
---|---|
To: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
Cc: | motum hesa <motums(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Que es mejor NULL o CERO |
Date: | 2009-06-26 17:23:24 |
Message-ID: | f205bb120906261023n3fbb9c36j7af2a8e04eea6fb1@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
El 26 de junio de 2009 14:00, Alvaro Herrera<alvherre(at)alvh(dot)no-ip(dot)org> escribió:
> Emanuel Calvo Franco escribió:
>
>> Realicé unos bench (obviamente fueron hechos on-the-fly :) = propenso a errores.
>
> No entendí el propósito de la prueba :-(
>
Lo que hice fue crear dos columnas, una con valores NULL y la otra sin
valores NULL.
hice un indice para cada columna (en realidad debería haber probado
con más tipos,
al menos con HASH).
Luego realice la busqueda por un determinado valor. Si te fijas, vas a
ver que hubo una
diferencia de tiempo en cuanto a rendimiento (al menos en los Btree).
Inclusive, realice
más búsquedas y en todas hubo una diferencia a favor de las columnas
que no tenían valores
NULL.
>> Tengo entendido que en la mayoría de los motores, los valores NULL
>> afectan los indices.
>
> ¿En qué sentido afectan? En Postgres los valores NULL también están en
> el índice. De hecho si no son muchos, el optimizador usará un índice en
> esa columna para buscar los valores que concuerden con una cláusula del
> tipo "siNULL IS NULL"
>
Por eso dije 'en la mayoría de los motores'. Por ejemplo, se que en
Mysql si afectan
los valores NULL en las tablas sobre los indices. Existen
comprobaciones extras que
pueden afectar el rendimiento.
Inclusive en pruebas que estoy realizando ahora, estoy viendo una
diferencia a considerar
entre indices que contienen valores NULL y los que no, en una cantidad
de registros
de ~ 1000000.
Sinceramente me gustaría saber con más detalle el porque de esta
diferencia, aunque
en teoría no debería haberla... o si?
--
Emanuel Calvo Franco
ArPUG [www.arpug.com.ar] / AOSUG Member
www.emanuelcalvofranco.com.ar
From | Date | Subject | |
---|---|---|---|
Next Message | Emanuel Calvo Franco | 2009-06-26 17:28:50 | Re: Sincronizacion en ambos sentidos |
Previous Message | Alvaro Herrera | 2009-06-26 17:00:26 | Re: Que es mejor NULL o CERO |