私は、データベースに対するより良い検索機能のためのメカニズムを調べています。これは現在、大きなボトルネックになっています(データベースのパフォーマンスを低下させる長期的なクエリを引き起こします)。
上司は私にSolrを調べてほしいと思っていましたが、詳しく調べてみると、実際にはLucene自体との何らかのDB統合メカニズムが必要なようです。
Lucene FAQから、Hibernate Search、Compass、およびDBSightを推奨しています。
現在のテクノロジースタックの背景として、TomcatでストレートJSPを使用しており、Hibernateは使用せず、その上に他のフレームワークは使用していません... DB2データベースに対してストレートJava、JSP、およびJDBCを使用しています。
それを考えると、Hibernate Searchをシステムに統合するのは少し難しいかもしれませんが、そのような統合の後にHibernateを使用するオプションがあると便利かもしれません。
適切なツールを選択するのに役立つ可能性のある、これらのツールの1つ(または他の同様のLuceneベースのソリューション)を使用して共有できる経験はありますか?
これはFOSSソリューションである必要があり、理想的には、変更が行われたときにツールに通知するための余分な労力なしに、データベースからの変更でLuceneの更新を自動的に(効率的に)管理します(そうでない場合は、独自のLuceneソリューションをロールするだけでよいようです)良い)。また、1つのデータベース(+フェイルオーバー)を備えた複数のアプリケーションサーバーがあるため、すべてのアプリケーションサーバーのソリューションをシームレスに使用するのが簡単であると便利です。
私は現在も選択肢を検討し続けていますが、他の人の経験を活用することは本当に役に立ちます。