Re: Diferencia entre indices btree, rtree y hash

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!!!

In response to

Browse pgsql-es-ayuda by date

  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