Я ищу механизмы для улучшения возможностей поиска по нашей базе данных. В настоящее время это огромное узкое место (вызывающее длительные запросы, которые снижают производительность нашей базы данных).
Мой начальник хотел, чтобы я посмотрел на Solr , но при ближайшем рассмотрении кажется, что мы действительно хотим какой-то механизм интеграции БД с самой Lucene.
Из FAQ по Lucene они рекомендуют Поиск в спящем режиме , Компас и DBSight .
В качестве фона нашего текущего технологического стека мы используем прямые JSP на Tomcat, никакой Hibernate, никаких других фреймворков на его основе ... просто прямые Java, JSP и JDBC для базы данных DB2.
Учитывая это, кажется, что Hibernate Search может быть немного сложнее интегрировать в нашу систему, хотя было бы неплохо иметь возможность использовать Hibernate после такой интеграции.
Есть ли у кого-нибудь опыт, которым он может поделиться с помощью одного из этих инструментов (или других аналогичных решений на основе Lucene), который может помочь в выборе правильного инструмента?
Это должно быть решение FOSS, и в идеале он будет управлять обновлением Lucene автоматическими (хотя и эффективно) изменениями из базы данных, без лишних усилий, чтобы уведомлять инструмент о внесенных изменениях (в противном случае мне кажется, что я внедряю собственное решение Lucene). было бы так же хорошо). Кроме того, у нас есть несколько серверов приложений с одной базой данных (+ аварийное переключение), поэтому было бы хорошо, если бы решение было легко использовать со всех серверов приложений без проблем.
Сейчас я продолжаю проверять варианты, но было бы очень полезно использовать опыт других людей.