Ich untersuche Mechanismen für bessere Suchfunktionen gegen unsere Datenbank. Es ist derzeit ein großer Engpass (was langanhaltende Abfragen verursacht, die unsere Datenbankleistung beeinträchtigen).Wie suche ich am besten mit Lucene gegen eine DB?
Mein Chef wollte, dass ich in Solr schaue, aber bei näherer Betrachtung, es scheint, wir wollen tatsächlich eine Art DB-Integrationsmechanismus mit Lucene selbst.
Vom Lucene FAQ empfehlen sie Hibernate Search, Compass und
DBSight
.
Als Hintergrund unseres aktuellen Technologie-Stacks verwenden wir gerade JSPs auf Tomcat, keinen Hibernate, keine anderen Frameworks darüber ... einfach nur Java, JSP und JDBC gegen eine DB2-Datenbank.
Vor diesem Hintergrund scheint die Hibernate-Suche ein wenig schwieriger in unser System zu integrieren, obwohl es auch schön sein könnte, nach einer solchen Integration Hibernate zu verwenden.
Hat jemand irgendwelche Erfahrungen, die sie mit der Verwendung eines dieser Tools (oder anderer ähnlicher Lucene-basierter Lösungen) teilen können, die bei der Auswahl des richtigen Tools helfen könnten?
Es muss eine FOSS-Lösung sein, und im Idealfall wird die Aktualisierung von Lucene mit Änderungen aus der Datenbank automatisch (wenn auch effizient) verwaltet, ohne dass das Tool nach Änderungen extra benachrichtigt wird (andernfalls scheint es meine eigene Lucene zu rollen) Lösung wäre genauso gut). Außerdem verfügen wir über mehrere Anwendungsserver mit nur einer Datenbank (+ Failover). Es wäre also gut, wenn die Lösung problemlos von allen Anwendungsservern aus genutzt werden könnte.
Ich untersuche die Optionen jetzt noch, aber es wäre wirklich hilfreich, die Erfahrungen anderer zu nutzen.
Haben Sie jemals Lucene eingebaut? –