在ssis Dataflow中有一個查找組件,該查找組件在一張擁有1800萬條記錄的表上進行查找。我已經使用完全緩存配置了查找。SSIS查找失敗
Default buffer size :20485760
Default Buffer Max rows: 100000
The lookup join is based on an ID column of varchar(13)type
它給出了一個錯誤,如圖below.What查找配置適合緩存這些多條記錄
Error: The buffer manager cannot write 8 bytes to file "C:\Users\usrname\AppData\Local\Temp\16\DTS{B98CD347-1EF1-4BC1-9DD9-C1B3AB2B8D73}.tmp". There was insufficient disk space or quota.
這將是在性能上的區別,如果我使用查找無緩存? 我的確瞭解到,在完全緩存模式下,數據在預執行階段之前被緩存,並且不必返回到數據庫。此完整緩存內存需要大量內存併爲數據流添加附加啓動時間。我的問題是我有什麼配置設置,以處理全緩存模式大量數據
請告訴我解決辦法,如果查找表中有千萬條記錄(以及他們在整個緩存不配合)
但是..它會降低性能嗎?排序是一個昂貴的操作,在這種情況下,我也需要使用2個排序組件! – user1254579
在源系統中排序比在ssis中同時使用查找和排序組件要快得多。對源進行排序(使用SQL語句,ORDER BY)並使用高級編輯器指定輸出已排序,並指定排序鍵。合併加入將選取這個元數據並應用這些鍵自動加入。 – cairnz
詳情請參閱這裏:http://www.ssistalk.com/2009/09/17/ssis-avoiding-the-sort-components/(編輯評論太晚了) – cairnz