0
我有400萬條記錄,需要每天從源到目標的數據加載,我們每天都在進行截斷。它需要9個小時,因爲有10個表格每天處理400萬條記錄數據。 你能告訴我如何提高性能。由於我想提高數據加載的pentaho性能
我有400萬條記錄,需要每天從源到目標的數據加載,我們每天都在進行截斷。它需要9個小時,因爲有10個表格每天處理400萬條記錄數據。 你能告訴我如何提高性能。由於我想提高數據加載的pentaho性能
你有兩個選擇:
使用一些簡單的JDBC連接設置可以提高速度。
useServerPrepStmts=false
rewriteBatchedStatements=true
useCompression=true
這些選項在PDI在連接輸入。雙擊連接轉到選項並設置這些值。
一起使用,useServerPrepStmts=false
和rewriteBatchedStatements=true
將「虛假」批量插入客戶端。具體來說,插入語句:
INSERT INTO t (c1,c2) VALUES ('One',1);
INSERT INTO t (c1,c2) VALUES ('Two',2);
INSERT INTO t (c1,c2) VALUES ('Three',3);
將被改寫成:
`INSERT INTO t (c1,c2) VALUES ('One',1),('Two',2),('Three',3`);
第三個選項useCompression=true
壓縮客戶端和MySQL服務器之間的流量。
最後,您可以將輸出步驟的副本數增加到2,以便有兩個線程插入到數據庫中。
您正在使用什麼RDBMS:
參考(選項2)? – Nikhil
我的源代碼是Oracle,目標是MySQL –
我知道這個解決方案,並且已經實現,但是沒有用,我甚至將副本數量增加到了4. –