From: | Florian Weimer <fweimer(at)bfk(dot)de> |
---|---|
To: | pgsql-performance(at)postgresql(dot)org |
Subject: | pg_trgm performance |
Date: | 2007-01-15 10:16:36 |
Message-ID: | 82mz4k4mt7.fsf@mid.bfk.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
I've got a table with a few million rows, consisting of a single text
column. The average length is about 17 characters. For the sake of
an experiment, I put a trigram index on that table. Unfortunately, %
queries without smallish LIMITs are ridiculously slow (they take
longer than an hour). A full table scan with a "WHERE similarity(...)
>= 0.4" clause completes in just a couple of minutes. The queries
only select a few hundred rows, so an index scan has got a real chance
to be faster than a sequential scan.
Am I missing something? Or are trigrams just a poor match for my data
set? Are the individual strings too long, maybe?
(This is with PostgreSQL 8.2.0, BTW.)
--
Florian Weimer <fweimer(at)bfk(dot)de>
BFK edv-consulting GmbH http://www.bfk.de/
Kriegsstraße 100 tel: +49-721-96201-1
D-76133 Karlsruhe fax: +49-721-96201-99
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2007-01-15 10:35:36 | Re: max() versus order/limit (WAS: High update activity, PostgreSQL vs BigDBMS) |
Previous Message | Rolf Østvik (HA/EXA) | 2007-01-15 08:58:25 | Re: Problem with grouping, uses Sort and GroupAggregate, HashAggregate is better(?) |