Как стать автором
Обновить

Комментарии 8

Егор, спасибо за статью. Мне было очень интересно прочитать про индексацию точек с помощью GiST, а также расширение gevel, так как ранее этими возможностями PostgreSQL мне пользоваться не доводилось.

Касаемо полнотекстового поиска при помощи GIN и pg_trgm не могу не сообщить, что не так давно писал об этом у себя в блоге (раз и два), а также делал доклад на РИТ (слайды). Авось соответствующие материалы кого-то заинтересуют.

Саша, спасибо, ссылки в тему и безусловно пригодятся.

Как же долго я ждал продолжения) Спасибо!


Хочу заметить, что GIST индекс один из самых трудных в освоении и использовании, поскольку имеет большой функционал. В своём проекте при полнотекстовом поиске использовал именно GIN индекс, так как работает он куда быстрее, чем GIST, хотя занимает больше места. Возможно Вы раскроете плюсы и минусы этих индексов при таком поиске в следующей статье, поэтому не буду забегать вперёд.


ЖДУ ПРОДОЛЖЕНИЯ

Рад, что ждете, спасибо. На эту часть, действительно, ушло больше времени, чем предполагал.
А про GIN обязательно будет, и сравнения с GiST тоже не избежать.

Подскажите пожалуйста, почему для того, чтобы explain выдал Index Scan необходимо явно выключить последовательное сканирование set enable_seqscan = off?

Потому что табличка очень маленькая, в одну страницу помещается целиком. Для нее полное сканирование выгоднее и планировщик это понимает. Запрещая seqscan, я вынуждаю планировщик использовать индекс — показать, что такой запрос в принципе может быть выполнен с использованием индекса.
А можно вместо этого добавить в таблицу больше строк.

Подскажите, пожалуйста, правильно ли я понимаю, что в картинке с индексом, построенном по сигнатурам документа, правым узлом на верхнем уровне должен быть 1111011, а не 111011 ? (т.е. потерялась первая единица)

Совершенно верно! Спасибо, я поправлю картинку.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий