From: | Eduardo Morras <emorras(at)s21sec(dot)com> |
---|---|
To: | pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Diferencia entre indices btree, rtree y hash |
Date: | 2009-05-19 11:20:24 |
Message-ID: | 20090519111846.6C1E3466FC1@s21sec.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
At 19:53 18/05/2009, Silvio Quadri wrote:
>El día 18 de mayo de 2009 11:36, BhEaN <listas(at)bhean(dot)com> escribió:
> > Hola a todos,
> >
> > Tengo una BBDD en PostgreSQL que va a
> contener varios millones de registros,
> > por lo que necesito optimizar las consultas lo máximo posible...
> >
> > Mi problema es que, a la hora de crear los
> indices, no puedo crear un indice
> > (tipo BTREE) en una de las columnas, porque
> algunos de los registros que hay
> > en ella tienen una longitud mayor a la que permite el indice (creo recordar
> > que 2000 y pico... no demasiado...)
>
>
>En el 100% los casos, un índice de 2000 caracteres es un índice inútil
>(para Postgres y para cualquier DBMS)
>Dependiendo de la solución que quieras implementar, como en otros
>mails se dice, hay que usar índice parcial o una solución "Full text
>search". También, si la búsqueda es exacta, podés implementar un
>índice HASH programado a manopla, que no es muy difícil.
Puedes comprimir el texto. En tiempo es similar a
hacer un hash pero tendras una correspondencia
1:1 entre el texto metido y el indice. Ademas
podras hacer comparaciones y aplicar metricas
(una simple resta te puede decir si dos entradas
son similares y cuanto). Puedes usar tanto un
huffman, arith coder o directamente un zip sobre
los 2KB de texto u otro algoritmo de compresion sin perdida.
>Saludos!
>Silvio
---------------------------------
Warning!!! Lemmings inside!!!
From | Date | Subject | |
---|---|---|---|
Next Message | Giorgio PostgreSQL | 2009-05-19 12:19:41 | Re: Implementar Servidor en WinXP? |
Previous Message | Gabriel Ferro | 2009-05-19 11:08:16 | funcion una a una o a la vez |