----- Mensaje original ----
> De: Raúl Andrés Duque Murillo <[email protected]>
> Para: Gabriel Ferro <[email protected]>; Lista - PostgreSQL 
> <[email protected]>
> Enviado: sábado 3 de enero de 2009, 20:38:35
> Asunto: Re: [pgsql-es-ayuda] Creando indices y clusters
> 
> 
> 
> --------------------------------------------------
> From: "Gabriel Ferro" 
> Sent: Saturday, January 03, 2009 3:38 PM
> To: 
> Subject: [pgsql-es-ayuda] Creando indices y clusters
> 
> > Maestros tengo una tabla de personas como mas de 30 millones de registros, 
> > la 
> cosa es que la clave es un serial, pero quiero acelerar las busuqedas por 
> numero 
> documento y por nombre.. entonces hice
> > 
> > CREATE INDEX nombrepersona_idx ON padrones.personas(nombre 
> varchar_pattern_ops);
> > CREATE INDEX documentopersona_idx ON padrones.personas(numdoc 
> varchar_pattern_ops);
> > 
> > ahora por lo que lei me conviene usar CLUSTER pero por cual de los dos 
> > indices 
> conviene?, imagino que solo por uno pero cual?
> > 
> > Se me ocurre que por nombrepersona_idx ya que seria lo mas comun hacer LIKE 
> %xxxx% sobre nombres antes que sobre numeros de doc.
> > Tambien les aclaro que  nombre es un character varying(100), mientras que 
> numdoc es un character varying(12).
> > 
> 
> Pues como tu bien lo dices sólo lo puedes hacer por uno de ellos porque lo 
> que 
> se hace es un reordenamiento físico de la tabla de acuerdo a un índice. Decir 
> cual es difícil ... depende de cual va a ser más frecuentemente usado, cual 
> tiene el mayor índice de selectividad (creo que así se llama) ,etc ....
> 
> Ten en cuenta que las consultas del tipo '%xxxx%' NO pueden usar índices 
> convencionales (btree/hash ) así que si las consultas son de este tipo ni te 
> preocupes por lo del índice/clusterig. Debes pensar en un índice FTS.
> 
> Atentamente,
> 
> RAUL DUQUE
> Bogotá, Colombia


En efecto la mayoria de las veces sera con LIKE '%cadena%'...
Estoy medio perdido.. ¿entonces no creo indeces?..
con FTS, te refieres a que debo usar TSEARCH2?

Si es lo ultimo tengo un problema, la cosa es que tengo postgresql 8.2 no 
estaba instalado el contrib, haci que hice
     apt-get install postgresql-contrib-8.2
luego para verificar 
    sudo dpkg -l | grep postgresql
y me aparecio el contrib....

ejecuto el tsearch2.sql.... hace un monton de cosas.. y finalmente me creo 3 
tablitas en el esquema public
Aqui me salta la duda ¿si tengo que trabajar en otros esquemas, anda asi o 
tengo que copiar las tablas en cada esquema?

suponiendo que esta todo ok... ahora quiero instalar el diccionario.... mi base 
de datos esta en UTF-8 y el diccionario que esta para bajar es
                      tsearch2_espanol.tar.bz2 - spanish ispell dictionary in 
iso-8859-1 encoding (Denis Torres) 

no tendre problemas?

por las dudas dejo hasta aqui.. hasta que me recomienden que hacer



      Yahoo! Cocina
Recetas prácticas y comida saludable
http://ar.mujer.yahoo.com/cocina/
--
TIP 7: no olvides aumentar la configuración del "free space map"

Responder a