pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Oleg Bartunov <oleg@sai.msu.su>
To: Martijn van Oosterhout <kleptog@svana.org>
Cc: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Ron <rjpeace@earthlink.net>
Cc: pgsql-performance@postgresql.org
Subject: Re: [GENERAL] Creation of tsearch2 index is very slow
Date: Sat, 21 Jan 2006 18:22:52 +0300 (MSK)
Message-ID: <Pine.GSO.4.63.0601211808490.14417@ra.sai.msu.su> (raw)
In-Reply-To: <20060121150424.GB9955@svana.org>
References: <26153.1137784469@sss.pgh.pa.us>
	<20060120201036.GE31908@svana.org>
	<26583.1137788505@sss.pgh.pa.us>
	<20060120205132.GF31908@svana.org>
	<26958.1137791955@sss.pgh.pa.us>
	<20060120213754.GG31908@svana.org>
	<7.0.1.0.2.20060120174141.039b03e8@earthlink.net>
	<6111.1137797436@sss.pgh.pa.us>
	<20060121130830.GA9955@svana.org>
	<Pine.GSO.4.63.0601211619541.14417@ra.sai.msu.su>
	<20060121150424.GB9955@svana.org>

On Sat, 21 Jan 2006, Martijn van Oosterhout wrote:

> On Sat, Jan 21, 2006 at 04:29:13PM +0300, Oleg Bartunov wrote:
>> Martijn, you're right! We want not only to split page to very
>> different parts, but not to increase the number of sets bits in
>> resulted signatures, which are union (OR'ed) of all signatures
>> in part. We need not only fast index creation (thanks, Tom !),
>> but a better index. Some information is available here
>> http://www.sai.msu.su/~megera/oddmuse/index.cgi/Tsearch_V2_internals
>> There are should be more detailed document, but I don't remember where:)
>
> I see how it works, what I don't quite get is whether the "inverted
> index" you refer to is what we're working with here, or just what's in
> tsearchd?

just tsearchd. We plan to implement inverted index into PostgreSQL core
and then adapt tsearch2 to use it as option for read-only archives.

>
>>> That's harder though (this algorithm does approximate it sort of)
>>> and I havn't come up with an algorithm yet
>>
>> Don't ask how hard we thought :)
>
> Well, looking at how other people are struggling with it, it's
> definitly a Hard Problem. One thing though, I don't think the picksplit
> algorithm as is really requires you to strictly have the longest
> distance, just something reasonably long. So I think the alternate
> algorithm I posted should produce equivalent results. No idea how to
> test it though...

you may try our development module 'gevel' to see how dense is a signature.

www=# \d v_pages
           Table "public.v_pages"
   Column   |       Type        | Modifiers
-----------+-------------------+-----------
  tid       | integer           | not null
  path      | character varying | not null
  body      | character varying |
  title     | character varying |
  di        | integer           |
  dlm       | integer           |
  de        | integer           |
  md5       | character(22)     |
  fts_index | tsvector          |
Indexes:
     "v_pages_pkey" PRIMARY KEY, btree (tid)
     "v_pages_path_key" UNIQUE, btree (path)
     "v_gist_key" gist (fts_index)

# select * from gist_print('v_gist_key') as t(level int, valid bool, a gtsvector) where level =1;
  level | valid |               a
-------+-------+--------------------------------
      1 | t     | 1698 true bits, 318 false bits
      1 | t     | 1699 true bits, 317 false bits
      1 | t     | 1701 true bits, 315 false bits
      1 | t     | 1500 true bits, 516 false bits
      1 | t     | 1517 true bits, 499 false bits
(5 rows)



 	Regards,
 		Oleg
_____________________________________________________________
Oleg Bartunov, Research Scientist, Head of AstroNet (www.astronet.ru),
Sternberg Astronomical Institute, Moscow University, Russia
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(495)939-16-83, +007(495)939-23-83



view thread (38+ messages)  latest in thread

Message-ID: <Pine.GSO.4.63.0601211808490.14417@ra.sai.msu.su>
Permalink:  ../Pine.GSO.4.63.0601211808490.14417@ra.sai.msu.su/
Also on:    postgresql.org/message-id/Pine.GSO.4.63.0601211808490.14417@ra.sai.msu.su

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-performance@postgresql.org
  Cc: oleg@sai.msu.su, kleptog@svana.org, tgl@sss.pgh.pa.us, rjpeace@earthlink.net
  Subject: Re: [GENERAL] Creation of tsearch2 index is very slow
  In-Reply-To: <Pine.GSO.4.63.0601211808490.14417@ra.sai.msu.su>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox