Re: How to speed up pg_trgm / gin index scan

Поиск
Список
Период
Сортировка
От Christian Ramseyer
Тема Re: How to speed up pg_trgm / gin index scan
Дата
Msg-id 55884868.3080707@networkz.ch
обсуждение исходный текст
Ответ на Re: How to speed up pg_trgm / gin index scan  (Jeff Janes <jeff.janes@gmail.com>)
Ответы Re: How to speed up pg_trgm / gin index scan  (Jeff Janes <jeff.janes@gmail.com>)
Список pgsql-general
On 22/06/15 19:00, Jeff Janes wrote:

>
>
>     A typical query on this table looks like this:
>
>     explain analyze
>     select log_date, host, msg
>     from logs_01 as log   where  log.msg like '%192.23.33.177%'
>         and log.log_date >= '2015-1-18 1:45:24'
>         and log.log_date <= '2015-1-19 1:45:24'
>         order by log_date asc offset 200 limit 50;
>
>
> I think that trigram indexes are not well-suited to searching IP addresses.
>
> If the typical query is always an IP address for the LIKE, I think you
> would want to build an index specifically tailored to that.  You could
> make a function to parse the IP address out of the msg, and then make a
> functional index, for example. It would require you to write the query
> differently.  Whether it would be a btree index or a gin index would
> depend on whether you can have more than one IP address in a msg.
>

Thanks Jeff, but the IP address was mostly an example... I should have
written this more clearly. Generally the searched string will be a
random short fragment from msg (ip, hostname, some part of an error
message etc.).

It must be matched exactly including all punctuation etc, so trigrams
look very suitable.

Cheers
Christian





В списке pgsql-general по дате отправления:

Предыдущее
От: Rick Otten
Дата:
Сообщение: Re: foreign keys to foreign tables
Следующее
От: Jaime Casanova
Дата:
Сообщение: Re: How to speed up pg_trgm / gin index scan