我有一個應用程序,每天導入大量的數據,數十萬條記錄。
數據來自不同的來源。數據使用C#讀取,然後批量插入數據庫。
該數據然後被處理:管理大量數據 - 存儲過程或數據集或其他...?
- 不同表是鏈接產生
- 新表
- 數據是使用複雜algorithmns校正(特定的表的總計具有與總零)
這些處理大部分都是在存儲過程中完成的。
儘管在C#中一些複雜的處理會更簡單,但將數據提取到數據集中並將其重新注入會顯着降低速度。
您可能會問爲什麼我在將數據插入數據庫之前不處理數據,但我認爲在內存中處理100,000條記錄並不實際,並且基於SQL集的命令在創建大量記錄時有幫助。
這可能會引發一個古老的使用存儲過程及其利弊的問題。 (例如,您如何對存儲過程進行單元測試?)
我想回應一下,您是如何處理大量數據以及如何解決問題的。