Re: FTS

From: "Eduardo Arenas C(dot)" <earenasc(at)uc(dot)cl>
To: "Guillermo E(dot) Villanueva" <guillermovil(at)gmail(dot)com>
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: FTS
Date: 2016-05-03 13:05:01
Message-ID: CAEe4h9pCaowyLLdpeigbafYV+-PPhjLvsatPNrHNMGiymXKLKQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Guillermo,

De lo que entiendo, o que deberías generar es una columna tipo tsvector en
tu tabla a partir de la columna donde tiene es texto. y esa columna tipo
tsvector indexarla, y ahí no sería necesario utilizar el coalesce. En
general he visto que cuando haces algún calculo o un cast sobre una columna
en el where como el tuyo la búsqueda se va a secuencial y no utiliza los
indices.

Saludos

El 3 de mayo de 2016, 09:56, Guillermo E. Villanueva<guillermovil(at)gmail(dot)com>
escribió:

> Buenos días cómo están?
> Les comento una experiencia con full text search.
> En una tabla que tengo unos 120mil registros creé un índice para hacer FTS
> de la siguiente forma:
> CREATE INDEX fts_escritodtxt
> ON tescrito
> USING gin
> (to_tsvector('spanish'::regconfig, escritodtxt));
>
> cuando hago un explain de la sentencia:
> SELECT
> t.escritoid,
> t.escritofecfirma,
> t.escritotipojuz
> FROM
> tescrito t
> WHERE
> to_tsvector('spanish',coalesce(escritodtxt,'')) @@
> to_tsquery('spanish','hogar & vereda');
>
> Me dice que *no utilizará el índice* creado y con una búsqueda secuencial
> demora aproximadamente 4 minutos.
> Pero si elimino el coalesce, entonces si usa el índice y el resultado se
> obtiene en menos de un segundo!!!
> *¿Es este el comportamiento esperado?* No pasa lo mismo con los índices
> no fts.
> Desde ya muchas gracias por sus comentarios
>
> Saludos
>
> Guillermo
>

--
​​
--
Eduardo Arenas
Jefe de Unidad de Gestión de Información
Ancora UC
​ - Chile​

+56 9 6629 1618
+56 22 944 9098

In response to

  • FTS at 2016-05-03 12:56:50 from Guillermo E. Villanueva

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Hellmuth Vargas 2016-05-03 14:35:00 Re: FTS
Previous Message Guillermo E. Villanueva 2016-05-03 12:56:50 FTS