Comments 8
Касаемо полнотекстового поиска при помощи GIN и pg_trgm не могу не сообщить, что не так давно писал об этом у себя в блоге (раз и два), а также делал доклад на РИТ (слайды). Авось соответствующие материалы кого-то заинтересуют.
Как же долго я ждал продолжения) Спасибо!
Хочу заметить, что GIST индекс один из самых трудных в освоении и использовании, поскольку имеет большой функционал. В своём проекте при полнотекстовом поиске использовал именно GIN индекс, так как работает он куда быстрее, чем GIST, хотя занимает больше места. Возможно Вы раскроете плюсы и минусы этих индексов при таком поиске в следующей статье, поэтому не буду забегать вперёд.
ЖДУ ПРОДОЛЖЕНИЯ
Рад, что ждете, спасибо. На эту часть, действительно, ушло больше времени, чем предполагал.
А про GIN обязательно будет, и сравнения с GiST тоже не избежать.
explain
выдал Index Scan
необходимо явно выключить последовательное сканирование set enable_seqscan = off
?Потому что табличка очень маленькая, в одну страницу помещается целиком. Для нее полное сканирование выгоднее и планировщик это понимает. Запрещая seqscan, я вынуждаю планировщик использовать индекс — показать, что такой запрос в принципе может быть выполнен с использованием индекса.
А можно вместо этого добавить в таблицу больше строк.
Подскажите, пожалуйста, правильно ли я понимаю, что в картинке с индексом, построенном по сигнатурам документа, правым узлом на верхнем уровне должен быть 1111011
, а не 111011
? (т.е. потерялась первая единица)
Индексы в PostgreSQL — 5