Re: [pgsql-ru-general] GIN индекс: сортировка

From: Oleg Bartunov <obartunov(at)gmail(dot)com>
To: "Dmitry E(dot) Oboukhov" <unera(at)debian(dot)org>
Cc: pgsql-ru-general(at)postgresql(dot)org
Subject: Re: [pgsql-ru-general] GIN индекс: сортировка
Date: 2014-09-29 20:00:30
Message-ID: CAF4Au4xJxXg-tSwk7yJK9m9Hse5rcoCOXYXfBLFEhtJT6cAKVQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general

2014-09-29 23:45 GMT+04:00 Dmitry E. Oboukhov <unera(at)debian(dot)org>:

> А еще по GIST может кто подскажет
>
> такая база:
>
> id, text
>
> база оч большая (база из прошлого примера, просто все строки
> сконкатенированы)
>
> строим GIST на триграммах
>
> CREATE INDEX "test_trgm_idx" ON "table"
> USING GIST (
> "text"
> "public"."gist_trgm_ops"
> );
>
> Далее кладем в базу мнооого записей.
>
> Далее запрос
>
> SELECT
> *
> FROM
> table
> ORDER BY
> "text" <-> 'test'
> LIMIT
> 100
>
>
а WHERE "text" % 'test' влом написать ?

>
> Работает, но меееееедленно:
>
> EXPLAIN ANALYZE показывает такое:
>
> Limit (cost=0.67..209.06 rows=50 width=159) (actual time=36.071..2356.039
> rows=50 loops=1)
> -> Index Scan using test_trgm_idx on table (cost=0.67..23567041.91
> rows=5654375 width=159) (actual time=36.070..2356.012 rows=50 loops=1)
> Order By: text <-> 'test'
>
> Total runtime: 2356.102 ms
> (4 строки)
>
>
> Я чет не понимаю. по идее он должен был бы открыть итератор и идти от
> наиболее похожих к наименее и взять первые 100.
> а он весь индекс перебирает (то есть проку от индекса - 0, без индекса
> работает столько же времени - 2 секунды)
>
> Вопрос: что сделать чтобы уменьшить время работы?
>
>
>
> --
>
> . ''`. Dmitry E. Oboukhov
> : :’ : email: unera(at)debian(dot)org jabber://UNera(at)uvw(dot)ru
> `. `~’ GPGKey: 1024D / F8E26537 2006-11-21
> `- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (GNU/Linux)
>
> iEYEAREDAAYFAlQptuUACgkQq4wAz/jiZTfPQwCgoKkY0zUsUI8RhgMTWm/Jcxa8
> c/EAoLjfogCdI1E1g285HjN/zjG5djN3
> =7kKh
> -----END PGP SIGNATURE-----
>
>

In response to

Responses

Browse pgsql-ru-general by date

  From Date Subject
Next Message Dmitry E. Oboukhov 2014-09-29 20:16:17 Re: GIN индекс: сортировка
Previous Message Dmitry E. Oboukhov 2014-09-29 19:45:41 Re: GIN индекс: сортировка