Skip site navigation (1) Skip section navigation (2)

Re: Запрос к авторам GIN/GIST индексов

From: Teodor Sigaev <teodor(at)sigaev(dot)ru>
To: Maxim Boguk <mboguk(at)masterhost(dot)ru>
Cc: pgsql-ru-general(at)postgresql(dot)org
Subject: Re: Запрос к авторам GIN/GIST индексов
Date: 2008-03-03 18:59:24
Message-ID: 47CC4A8C.5040901@sigaev.ru (view raw or flat)
Thread:
Lists: pgsql-ru-general

Maxim Boguk wrote:
> Насколько тяжело будет написать реализацию GIN/GIST индексов для полей 
> типа Bit String Types 
> (http://www.postgresql.org/docs/8.3/interactive/datatype-bit.html)
> для ускорения поиска через побитовые операций типа AND/OR (фактически 
> работа с массивом флагов ускоренная индексом).
Наскотлько велика длина BitString? И как много строк?

Для ограниченного по длине BitString (скажем, меньше 128 байт), GiST opclass 
реализовать не так трудно. GIN проще - фактически, extract_* методды, которые 
должны возвращать массив номеров установленных битов.


> 
> Сейчас функциональность флагов можно реализовать через hstore или 
> intarray при желании.
> Но это ведет к очень большому перерасходу места в таблицах (hstore 
> совсем большой перерасход и в индексе и в самом поле в зависимости от 
> длинны ключей... intarray 32х кратный overhead по размеру поля и наверно 
> такой же по размеру индекса)
Индекс GIN будет такого же размера - момер установленного бита есть номер.


-- 
Teodor Sigaev                                   E-mail: teodor(at)sigaev(dot)ru
                                                    WWW: http://www.sigaev.ru/

In response to

Responses

pgsql-ru-general by date

Next:From: Maxim BogukDate: 2008-03-04 13:32:48
Subject: Re: Запрос к авторам GIN/GIST индексов
Previous:From: Maxim BogukDate: 2008-03-03 12:19:02
Subject: Запрос к авторам GIN/GIST индексов

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group