我有一個.csv文件,在SSIS包期間被轉換爲600萬行。我有一個SQLServer 2005中有2500萬行的表。 .csv文件具有複製表中數據的數據,如果行已經存在,是否可以更新行,或者有效實現此目的的最佳方法是什麼?是否可以用SSIS插入或類似的東西來覆蓋?
0
A
回答
5
比較6m行與25m行對於每行調用lookup或SQL命令數據流組件來執行upsert不會太高效。在這些情況下,有時將它們快速加載到臨時表中並使用單個基於集合的SQL命令來執行upsert是最有效的。
即使您決定執行查找 - 將流分成兩個流,一個插入,另一個插入臨時表中進行更新操作。
2
如果您不介意丟失舊數據(即最新的文件是重要的,而不是表中的內容),您可以擦除表中的所有記錄並再次插入它們。
您也可以加載到臨時表中,並確定需要更新哪些內容以及需要從中插入哪些內容。
1
您可以使用查找任務來識別CSV和表中的任何匹配行,然後將其輸出傳遞給另一個表或數據流,並使用SQL任務執行所需的更新。
相關問題
- 1. getPreventDefault() - 是否可以覆蓋,替換或類似的東西?
- 2. 是否可以用宏實現類似Scala的@BeanProperty的東西?
- 3. 是否可以使用類似IBOutlet數組的東西?
- 4. MSVC是否有類似__builtin_va_arg_pack的東西?
- 5. 我可以在VBA中使用DPAPI(或類似的東西)嗎?
- 6. 是否有API或類似的東西來回應人類語言?
- 7. 我可以使用`predicateWithSubstitutionVariables`或類似的東西來代替鍵值嗎?
- 8. 我可以使用ngxErrors或類似的東西來顯示錶單錯誤嗎?
- 9. 是否可以刪除或覆蓋cmdlet?
- 10. VS插件:查看標記。是否存在類似的東西?
- 11. 是否有LARGEST_INTEGER宏或類似的東西? (C)
- 12. Appengine與Go:是否有一個http.Handle prehook或類似的東西?
- 13. 紅寶石是否有類似buildout或virtualenv的東西?
- 14. 在C++(或C++ 11)中是否有類似於c#的東西?
- 15. 模型中是否有與application_helper或application_controller類似的東西?
- 16. 是否有Int.isWholeNumber()函數或類似的東西?
- 17. 是否有scat(如'scp'等)或類似的東西?
- 18. 我可以從Angular $ compile或類似的東西獲取HTML嗎?
- 19. rti/FastXml或類似的東西是否可以與rails 3一起使用來加速xml呈現?
- 20. 類似的東西?
- 21. 是否可以覆蓋NSUserDefault?
- 22. OS X系統調用是否可以覆蓋或插入系統範圍內?
- 23. Azure Data Factory中是否有類似於SSIS中的FOR/FOREACH循環的東西?
- 24. jQuery的儀表,或類似的東西
- 25. 對於Qt ReSharper(或類似的東西)?
- 26. Disign Actionbar或創建類似的東西
- 27. android-listview onPrerender()或類似的東西
- 28. CSS繼承,或類似的東西
- 29. HTTrack for android!或類似的東西
- 30. CollectionView與WPF(或類似的東西)
非常好的一點,查找任務可能會慢這個行數。分段和SQL是一個不錯的選擇。 – grapefruitmoon 2010-11-23 16:46:42