Я собирался интегрировать поиск на основе сфинкса в веб-сайт, но обнаружил, что встроенной поддержки для исправления орфографии нет.
Люди в Интернете предлагают использовать pspell или другие сторонние библиотеки для достижения цели, но проблема в том, что данные, в которых я собираюсь искать, содержат в основном "технические" термины, такие как названия брендов, поэтому я не думаю, что общие библиотеки будут включать их.
С другой стороны, Xapian заявляет, что имеет поддержку коррекции орфографии на основе индексированных данных, именно то, что я хочу. Стоит ли вместо этого использовать Xapian? Я все еще не совсем понимаю, какой полнотекстовый поисковик мне следует использовать: Sphinx выглядит неплохо, но в нем отсутствуют некоторые интересные функции Xapian (или, может быть, Lucene?), Хотя у последнего, похоже, меньше сообщество и меньше документации.
Я думаю, что могу решить проблему с помощью слов, отсутствующих в словаре pspell, используя для него пользовательский, но я не уверен, что это приведет к заметным потерям производительности? Я собираюсь использовать поисковую систему для поиска в центре внимания (отдельный поиск по ajax для каждой введенной буквы) на довольно популярном веб-сайте, поэтому производительность имеет значение.
В идеале, я хотел бы, чтобы некоторые поля, такие как названия брендов, имели больший приоритет, чем общий словарь, но я думаю, что это не очень важно, так как большинство названий брендов сильно отличаются от других слов.
Любые предложения по общему дизайну пользовательского полнотекстового поискового движка тоже приветствуются.
Спасибо