我需要整合來自30個數據庫和20個表的數據。我的第一個嘗試是爲每個表創建一個數據流。每個數據流將有30個數據源,它們從每個數據庫的1個表中獲取數據,然後插入到1個目標中。這不起作用,因爲沒有足夠的內存。我試圖過濾數據來忽略那些不會被使用的數據 - 它沒有幫助。這些任務應該每天執行。整個合併數據庫被刪除,然後插入新數據,這意味着每天都會插入大量數據。任何人都有如何處理內存問題的建議?SSIS整合海量數據 - 建議
現在我看到的唯一解決方案是創建20個包。每個軟件包將有30個數據流。每個數據流將只從一個數據庫獲取數據。但是再一次,我不知道執行的順序是什麼?一個包的數據流會同時開始執行還是逐個執行?
編輯:
這是我做到了......這裏是控制流的截圖:
數據截圖的流程:
我創建了一個包,一個從表所有數據庫。在這種情況下,每個數據流都會從一個表中獲取4年前的數據並導入到源數據庫。問題是我在一個數據庫中有一個表,它有太多的數據,它返回錯誤:
The buffer manager failed a memory allocation call for 10484608 bytes, but was unable to swap out any buffers to relieve memory pressure. 20 buffers were considered and 20 were locked. Either not enough memory is available to the pipeline because not enough are installed, other processes were using it, or too many buffers are locked.
有什麼建議嗎?
結構完全相同,每天執行一次。 –