From: | Jaime Casanova <systemguards(at)yahoo(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Como indexar correctamente |
Date: | 2005-01-11 04:21:56 |
Message-ID: | 20050111042156.97273.qmail@web50010.mail.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
--- rogoh <rogoh(at)dscorp(dot)com(dot)mx> escribió:
> Saludos a todos, hace rato lei una pregunta en el
> foro de:
>
> ¿Como se comporta en términos de confiabilidad y
> performance
> postgresql con una de sus tablas conteniendo
> 250.000.000 de registros?
>
> Alvaro responde que hay empresas con mayor cantidad
> de información que esa.
>
> Ahora la pregunta que tengo y que no he podido
> solucionar en un sistema que
> estoy haciendo es la forma correcta de indexar
> tablas que contegan esa
> cantidad de información y que se relacionen con
> otras tablas para que las
> consultas sean lo mas rapido posible, esto es algo
> asi como:
>
> Select t1.*, t2.*
from tabla1 t1,tabla2 t2,
..
> where t1.campo1=t2.campo1
> and t1.campo2=t3.campo1 and
>
> Lo que pasa en mi caso es que al usar el EXPLAIN
> ANALYZE en algun Query
> parecido los indices que creo no los utiliza todos,
> porque?. Y la pregunta
> mas especifica ¿hay reglas que hay que seguir para
> indexar en querys que
> contengan mas de una tabla y tambien dependen del
> tipo de dato de las
> condicionantes del Query?
>
>
Recuerda, ademas de lo que te dijo Alvaro, que no toda
consulta mejora por usar indices, y ciertamente no va
a usar todos los indices.
en postgres si la consulta regresa menos del 10% de la
tabla es casi seguro que va a usar indices (si es que
existe alguno adecuado, claro esta). si regresa + de
eso depende de algunos factores.
Por cierto, (al contrario de lo que algunos en mi pais
piensan) no todo JOIN va a usar un indice. Por
ejemplo, si tienes un join entre una tabla pequeña y
una muy grande y el campo que hace JOIN contiene el
valor que buscas en la mitad de los registros de la
tabla grande no va a usar indices.
atentamente,
Jaime Casanova
_________________________________________________________
Do You Yahoo!?
Información de Estados Unidos y América Latina, en Yahoo! Noticias.
Visítanos en http://noticias.espanol.yahoo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Mauricio Ferrari | 2005-01-11 12:32:58 | Re: Benchmarking de performance entre Oracle y Postgresql |
Previous Message | Alberto Pia | 2005-01-11 02:26:42 | Funcion to_char con meses |