1

У меня есть приложение Rails 4 с базой данных PostgreSQL. Я использую полный текстовый поиск по умолчанию для PSQL для некоторых полей, таких как имя_узла. Мне нужно отправить сотни полнотекстовых поисковых запросов одновременно с моей базой данных.Пакетный текстовый поиск с PostgreSQL

Прямо сейчас, я выполняю эти запросы поочередно, и это очень медленно. Есть ли способ отправить текстовый поиск в пакетном режиме?

ответ

0

Да попробуйте использовать tsvector columns, который

pg_search#using-tsvector-columns

Позже вы будете запускать поиск против tsv_field вместо обычного текста, который будет делать это быстрее.

pg_search_scope :fast_content_search, 
       :against => :content, 
       :using => { 
        dmetaphone: { 
        tsvector_column: 'tsvector_content_dmetaphone' 
        }, 
        tsearch: { 
        dictionary: 'english', 
        tsvector_column: 'tsvector_content_tsearch' 
        } 
        trigram: {} # trigram does not use tsvectors 
       } 
Смежные вопросы