Re: Creation of tsearch2 index is very slow - Mailing list pgsql-general

From Tom Lane
Subject Re: Creation of tsearch2 index is very slow
Date
Msg-id 17454.1137771321@sss.pgh.pa.us
Whole thread Raw
In response to Creation of tsearch2 index is very slow  (Stephan Vollmer <svollmer@gmx.de>)
Responses Re: Creation of tsearch2 index is very slow  (Stephan Vollmer <svollmer@gmx.de>)
Re: Creation of tsearch2 index is very slow  (Martijn van Oosterhout <kleptog@svana.org>)
List pgsql-general
Stephan Vollmer <svollmer@gmx.de> writes:
> I noticed that the creation of a GIST index for tsearch2 takes very
> long - about 20 minutes. CPU utilization is 100 %, the resulting
> index file size is ~25 MB. Is this behaviour normal?

This has been complained of before.  GIST is always going to be slower
at index-building than btree; in the btree case there's a simple optimal
strategy for making an index (ie, sort the keys) but for GIST we don't
know anything better to do than insert the keys one at a time.

However, I'm not sure that anyone's tried to do any performance
optimization on the GIST insert code ... there might be some low-hanging
fruit there.  It'd be interesting to look at a gprof profile of what the
backend is doing during the index build.  Do you have the ability to do
that, or would you be willing to give your data to someone else to
investigate with?  (The behavior is very possibly data-dependent, which
is why I want to see a profile with your specific data and not just some
random dataset or other.)

            regards, tom lane

pgsql-general by date:

Previous
From: Keary Suska
Date:
Subject: Re: How to fetch rows with multiple values
Next
From: Marcos
Date:
Subject: Re: Create Produre for DROP row