我試圖導入一個大的MySQL數據庫到Solr,並且導入查詢在服務器上相當繁重(這可能會影響正在運行的實際產品以及使用該數據庫的那個時間)。有沒有辦法將完整的導入分成幾個小塊?我沒有在這裏或在Solr的文檔中找到關於此主題的任何內容。Solr完全導入幾個較小的塊
我知道增量導入功能,但我使用它來增量導入新的/更改的數據。
我試圖導入一個大的MySQL數據庫到Solr,並且導入查詢在服務器上相當繁重(這可能會影響正在運行的實際產品以及使用該數據庫的那個時間)。有沒有辦法將完整的導入分成幾個小塊?我沒有在這裏或在Solr的文檔中找到關於此主題的任何內容。Solr完全導入幾個較小的塊
我知道增量導入功能,但我使用它來增量導入新的/更改的數據。
當然,你可以添加一個條件像
WHERE pk<'${dataimporter.request.INDEX}'
,並在請求參數傳遞INDEX。所以每次調用完全導入時,只有部分記錄被索引。請記住使用& clean = false當然或者每次都會擦掉內容。
也許你可以檢查batchsize: -
BATCHSIZE(默認值:500) - 集的最大數量(或者說驅動程序的建議)在一個數據庫查詢從數據庫中檢索的記錄。更改此參數可以在查詢返回很多結果的情況下提供幫助。這可能沒有幫助,因爲此機制的實現取決於JDBC驅動程序。
http://lucene.472066.n3.nabble.com/DataImportHandler-running-out-of-memory-td490797.html