F.8. btree_gin — GIN классы операторов с поведением B-tree#

F.8. btree_gin — GIN классы операторов с поведением B-tree

F.8. btree_gin — GIN классы операторов с поведением B-tree #

btree_gin предоставляет классы операторов GIN, которые реализуют эквивалентное поведение B-дерева для типов данных int2, int4, int8, float4, float8, timestamp with time zone, timestamp without time zone, time with time zone, time without time zone, date, interval, oid, money, "char", varchar, text, bytea, bit, varbit, macaddr, macaddr8, inet, cidr, uuid, name, bool, bpchar, и всех типов enum.

В целом, эти классы операторов не будут превосходить эквивалентные стандартные методы индексирования B-деревьев и не обладают одной основной особенностью стандартного кода B-дерева: возможностью обеспечения уникальности. Однако они полезны для тестирования GIN и в качестве основы для разработки других классов операторов GIN. Кроме того, для запросов, которые проверяют как столбец, индексируемый GIN, так и столбец, индексируемый B-деревом, может быть более эффективно создать многоколоночный индекс GIN, который использует один из этих классов операторов, чем создать два отдельных индекса, которые должны быть объединены с помощью побитового AND.

Этот модуль считается "доверенным", то есть его можно установить недоступным пользователям, у которых есть привилегия CREATE в текущей базе данных.

F.8.1. Пример использования #

CREATE TABLE test (a int4);
-- create index
CREATE INDEX testidx ON test USING GIN (a);
-- query
SELECT * FROM test WHERE a < 10;

F.8.2. Авторы #

Федор Сигаев () и Олег Бартунов (). См. http://www.sai.msu.su/~megera/oddmuse/index.cgi/Gin для дополнительной информации.