0

大規模な MySQL データベースを Solr にインポートしようとしていますが、インポート クエリはサーバーに非常に負荷がかかります (これは、その時点でデータベースを実行および使用している実際の製品に影響を与える可能性があります)。完全なインポートをいくつかの小さなチャンクに分割する方法はありますか? ここでもSolrのドキュメントでも、この件については何も見つかりませんでした。

デルタ インポート機能については知っていますが、新しい/変更されたデータのデルタ インポートに使用しています。

4

2 に答える 2

1

もちろん、次のような条件を追加できます

WHERE pk<'${dataimporter.request.INDEX}'

リクエスト パラメータで INDEX を渡します。そのため、フル インポートを呼び出すたびに、レコードの一部のみがインデックス化されます。もちろん&clean=falseを使用することを忘れないでください。そうしないと、コンテンツが毎回消去されます。

于 2013-02-06T09:19:51.813 に答える
0

おそらく、バッチサイズを確認できます: -

batchSize (デフォルト: 500) – データベースへの 1 回のクエリでデータベースから取得されるレコードの最大数 (またはドライバーの推奨値) を設定します。このパラメーターを変更すると、クエリが多くの結果を返す場合に役立ちます。このメカニズムの実装は JDBC ドライバーに依存するため、役に立たない場合があります。

http://lucene.472066.n3.nabble.com/DataImportHandler-running-out-of-memory-td490797.html

于 2013-02-06T10:32:51.473 に答える