1

私は12億のドキュメントを含むインデックスを持っています(Solr1.4.1)。約250の一意の値を含むフィールド(int型)でファセットナビゲーションを有効にしたい。

デフォルトのメソッド( facet.method Java heap space java.lang.OutOfMemoryError= fc)を使用していますが、enumメソッドは非常に低速です(ただし機能します)。

特定の数のドキュメントと一意の値に対する最善のアプローチは何ですか?

更新しました:

だから私が正しく理解していれば:

  • fcメソッドを使用したファセットのメモリ使用量は次のとおりです。MaxDoc*4バイト(フィールドタイプはint、64ビットJVM)、つまり1118950216 *4バイト=4.1GB(約)

  • enumメソッドを使用したファセットのメモリ使用量は次のとおりです。NumberOfUniqueValues*SizeOfBitset= 250 *(1118950216/8)= 32GB

これは正しいです?

FCメソッドを再試行します(そしてsolrにより多くのRAMを与えます)。

ありがとう!

4

1 に答える 1

1

JVM メモリ割り当て設定を調整するか、サーバーにメモリを追加する必要があります。または、インデックスのシャーディングを検討してください。

于 2010-12-21T17:12:34.263 に答える