新しい Lucene インデックスのサイズを見積もるために使用できる既知の数式はありますか? インデックスを作成したいフィールドの数と、各フィールドのサイズを知っています。そして、いくつの項目が索引付けされるかを知っています。では、これらが Lucene によって処理されると、どのようにバイトに変換されるのでしょうか?
3 に答える
lucene インデックス形式のドキュメントは次のとおりです。主なファイルは複合インデックス (.cfs ファイル) です。用語の統計がある場合は、おそらく .cfs ファイル サイズの見積もりを取得できます。これは、使用するアナライザーと定義するフィールド タイプによって大きく異なることに注意してください。
インデックスには、各「トークン」やテキストフィールドなどが1回だけ保存されます。したがって、サイズは、インデックスが作成される素材の性質によって異なります。それに加えて、保存されているものもすべて追加します。良いアプローチの1つは、サンプルを取得してインデックスを作成し、それを使用して完全なソースコレクションを推定することです。ただし、ソースサイズに対するインデックスサイズの比率も時間の経過とともに減少します。これは、単語がすでにインデックスに含まれているため、サンプルを元のサンプルの適切な割合にすることをお勧めします。
それは各用語の頻度にも関係していると思います (つまり、同じ用語の 10,000 コピーのインデックスは、10,000 の完全に一意の用語のインデックスよりもはるかに小さくなければなりません)。
また、用語ベクトルを使用しているかどうか、およびフィールドを保存しているかどうかにも、おそらくわずかな依存関係があります。詳細を教えていただけますか?ソース データの用語頻度を分析できますか?