現在、ユーザーがプレゼンテーション、ドキュメント、電子書籍 (scribd や slideshare など) をアップロードできる Web サイトを開発しているため、ファイルのコンテンツを検索できるようにする必要があります。現在、txt ファイル内のファイルからテキストを抽出しています。MySQL を使用しているため、2 つのオプションを検討しています。
- プレーン テキストを別のテーブルに保存し、mysql のフルテキスト インデックスを使用して検索します。
- 転置インデックスを使用して単語を保存し、それらを検索します。(2 つの新しいテーブル - 単語とドキュメント テーブルとの多対多)。この場合、結果との関連性を高める繰り返しの単語を処理するにはどうすればよいでしょうか。
テキストは検索にのみ使用されます。(1)の問題は、電子書籍のテキストが巨大になる可能性があるため、(たとえば) 50kb 以下に制限することを検討しています。(2) はまた、電子書籍に多くの単語があるという問題を抱えていますが、これも制限される可能性があります。
それで、テキストにインデックスを付けて、全文検索を高速に実行できるようにする最善の方法を教えていただけませんか。この場合、mysql を最大限に活用する必要があります。