Как сделать многокритериальный фильтр с возможностями полнотекстового поиска?
Добрый день! имеется база данных в postgresql 9.3 объемом в 25-30 ГБ. необходимо.
Основной пул запросов идет по одной таблице zakaz объемом в ~4.5М записей примерно следующего содержания:
id (int),
title (varchar),
cod_zakaza (varchar),
description (text),
region (int),
client (varchar),
data_zakaza (date),
data_ispoln (date) ...
именно по этим полям идет поиск необходимых записей.
Появилась необходимость добавить в многокретериальную выборку функционал полнотекстового поиска по title + description с учетом всех основных форм слова. например поиск по запросу окно в результат попадали окон, окна, оконных и т.д. + еще с учетом доп параметров (дата, регион, код заказа и т.д.).
Использование в чистом виде эластик или сфинкс как я понял вынуждает жертвовать дополнительными параметрами.
Может кто нибудь поделиться опытом (мыслями) по реализации подобной задачи?
Буду бесконечно признателен!
Никакими дополнительными параметрами жертвовать не придется, т.к. эти движки поиск ведут по своим индексам, а не по таблицам, данные которых они проиндексировали.