![](/img/trans.png)
[英]Retrieve data from SQL Server 2005 with SQL Server 2008 SSIS Data Flow via procedure with parameter in data source
[英]Import data from Oracle datawarehouse to SQL Server via SSIS 2008
我有一個Oracle數據倉庫,其中包含大量數據(大約1100萬行),並希望每天將這些數據提取到SQL Server數據庫中。
我創建了一個程序包,使用緩慢變化的尺寸將數據從Oracle導入SQL Server,但是它每秒處理大約600行。
我需要我的程序包僅插入新記錄,而無需更新或對舊記錄做任何事情,因為數據量很大。
有什么方法可以對其他數據流項目進行快速處理嗎?
600 / sec的價格還算不錯。 如果假設僅在一年內就收集了這1100萬個數據。 這意味着每天新記錄的數量僅為3萬。 大約需要1分鍾才能運行。
最大的問題是識別要插入的記錄。
如果您必須具有時間戳或順序ID來標識最新插入的記錄。
如果您的ID不連續,則可以嘗試從Oracle表提取到SSIS ONLY ID字段中,並將其與現有數據集進行比較,然后僅從Oracle請求最新記錄。
如果沒有這些字段,則可以提取所有1100萬條記錄,然后在兩邊生成哈希並比較這些哈希值以了解要插入的新內容。
您可以嘗試在SSIS中利用合並聯接,這應該允許在僅插入新記錄的情況下進行比較。 此外,我不喜歡在確定哪些數據可以插入和不插入時僅使用日期時間,我想這取決於您的源數據。 聽起來好像沒有Oracle源數據的順序ID字段? 如果有的話,我會結合使用日期和時間來插入哪些數據。 這可以在SQL或SSIS中完成。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.