6

この質問がstackoverflowとgoogleで何度も聞かれていることは知っていますが、すべての答えが私を満足させることはできません。ほとんどのソリューションは、インデックス全体がメモリに収まると想定しており、Javaシリアル化によってディスクに保存できます。インデックスが必要な場合は、インデックス全体をメモリにロードする必要があります。このようなソリューション: ソリューション1ソリューション2。しかし、私たちが知っているように、この仮定は常に正しいとは限らないので、メモリに収まらないときに反転したドキュメントインデックスをディスクに保存するにはどうすればよいですか?

Javaでの解決策を教えていただければ幸いです。

4

2 に答える 2

1

JDBM3を試してみます。これはツリーとハッシュのコレクションをサポートし、唯一の要件は各キーまたはエントリがメモリに収まることです。

非常に大きなエントリがある場合は、データの一部を抽出するためにメモリマップできるファイルとして各エントリを保存することをお勧めします。ルックアップテーブルでは、ファイル名のキーを保存できます。(またはファイル名をキーにします)

于 2012-03-15T13:17:40.240 に答える