60.2. Встроенные классы операторов
В базовый дистрибутив Postgres Pro включены классы операторов SP-GiST, перечисленные в Таблице 60.1.
Таблица 60.1. Встроенные классы операторов SP-GiST
Имя | Индексируемый тип данных | Индексируемые операторы | Операторы упорядочивания |
---|---|---|---|
kd_point_ops | point | << <@ <^ >> >^ ~= | <-> |
quad_point_ops | point | << <@ <^ >> >^ ~= | <-> |
range_ops | любой тип диапазона | && &< &> -|- << <@ = >> @> | |
box_ops | box | << &< && &> >> ~= @> <@ &<| <<| |>> |&> | |
circle_ops | circle | << &< && &> >> ~= @> <@ &<| <<| |>> |&> | <-> |
poly_ops | polygon | << &< && &> >> ~= @> <@ &<| <<| |>> |&> | <-> |
text_ops | text | < <= = > >= ~<=~ ~<~ ~>=~ ~>~ |
Из двух классов операторов для типа point
классом по умолчанию является quad_point_ops
. Класс kd_point_ops
поддерживает те же операторы, но использует другую структуру данных индекса, которая может дать выигрыш в скорости для некоторых приложений.
Классы операторов quad_point_ops
, kd_point_ops
, circle_ops
и poly_ops
поддерживают оператор упорядочивания <->
, позволяющий выполнить поиск k ближайших соседей (k-NN
) по индексированному набору точек, кругов или многоугольников.