PostgreSQL: проверка входных текстовых документов по столбцу tsquery - PullRequest
0 голосов
/ 15 мая 2019

У меня есть таблица «топиков» со связанными запросами по ключевым словам, которые я реализовал в столбце tsquery. Мои данные в основном выглядят так:

topic_name   :  topic_tsquery 
Sports       :  'basketball' | 'football'
Crime        :  'violence' | 'police' | 'felony'
Lifestyle    :  'wine' | 'cooking' | 'leisure'

Цель состоит в том, чтобы автоматически сопоставлять входные текстовые документы с темами, выполняя такие запросы:

SELECT topic_name FROM topic 
WHERE to_tsvector(INPUT_DOC_TEXT) @@ topic_tsquery;

Обычно в PostgreSQL FTS я вижу, что tsvector хранится и индексируется, а ввод - это tsquery, но это как бы наоборот.

Это масштабируемое решение, поскольку моя таблица тем выходит за рамки нескольких тысяч строк? Есть ли индекс, в который я могу добавить свой столбец topic_tsquery, чтобы сделать запросы более эффективными?

...