Javaで検索エンジンを実装しました。逆索引、つまり、用語から用語が表示されるドキュメントのリストへのマッピングを格納するデータベースがあります。ユーザーがドキュメントをアップロードして、インデックス作成のためにドキュメントに追加できる機能があります。私が直面している問題は、新しいドキュメントが追加されるたびに、インデックスが更新される代わりにメモリ内で再構築されることです。更新するには、インデックス内のすべての用語の基本的に tf-idf (用語頻度 * 逆ドキュメント頻度) であるドキュメント ベクトルを格納するデータベースが必要です。そのような構造を格納するために必要な行と列、または複数のテーブルなど、データベース構造を理解することはできません。
保管する必要があります
1. Document ID
2. Document Title
3. N dimensional Document vector where N is the number of unique terms
4. N terms
5. IDF of each term
6. TF of each term for every document.
クエリ マッチング時に、このベクトルを抽出し、クエリ ベクトルとの類似性を計算できるようにする必要があります。追加情報が必要な場合は、お知らせください。どうもありがとう、私はここでいくつかの助けを得ると確信しています.