ユーザーがドキュメントをアップロードしたり、独自のドキュメントを作成したりできる Web アプリがあります。アップロードされたファイルは Amazon S3 に保存され、作成された情報は MySQL データベースに保存されます。私が探しているのは、ある種の検索エンジンで、それぞれに一意の ID を持つすべてのテキスト ドキュメントをフィードし、インデックスなどを作成します。後で、検索クエリを指定すると、一致するテキストのスニペットと共に、(ID を介して) 最も一致するドキュメントが引き出されます。
基本的に、他のユーザーが公開としてマークしたものと一緒に、アップロードされたもののリポジトリをユーザーが検索できるようにしたいと考えています。ソリューションは標準の Linux サーバーで実行する必要があり、オープン ソースであることが理想的ですが、法外な価格でなければ有料のソリューションも検討します。
これまでのところ、次の 3 つの候補が見つかりました。
- MySQL 全文検索- 私が読んだレポートの中には、非常に遅いというものがあります。
- Apache Lucene - 残念ながら Java で書かれていますが、必要に応じて使用します。おそらく速い
- Sphinx - それほど人気がないようです。理想的には、私が見つけたソリューションには多くのコミュニティ サポートがあります。
私が見落としている他の良い選択肢があれば、または上記のいずれかの経験がある場合はお知らせください。