btree_gist. Показательные классы операторов GIST#
В исходном дистрибутиве установлено по умолчанию: нет.
Связанные компоненты: отсутствуют
Схема размещения:
ext
Модуль предоставляет показательные классы операторов GiST, которые реализуют поведение, подобное поведению обычных классов 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;все типы
enum.
Доработка#
Не проводилась.
Ограничения#
Существуют следующие ограничения:
классы операторов
GiSTне будут работать быстрее аналогичных стандартных методов индекса-B-tree;нет возможности ограничивать уникальность.
Установка#
При наличии прав администратора СУБД включение модуля возможно выполнить вручную:
CREATE EXTENSION btree_gist SCHEMA ext;
Настройка#
Не требуется.
Использование модуля#
Использование btree_gist вместо btree:
CREATE TABLE test (a int4);
-- создать индекс
CREATE INDEX testidx ON test USING GIST (a);
-- запрос
SELECT * FROM test WHERE a < 10;
-- поиск ближайших соседей: найти десять записей, ближайших к "42"
SELECT *, a <-> 42 AS dist FROM test ORDER BY a <-> 42 LIMIT 10;
Ссылки на документацию разработчика:#
Дополнительно поставляемый модуль btree_gist: https://www.postgresql.org/docs/13/btree-gist.html.