我是SSIS的初學者,所以我可能會做一些愚蠢的事情。executePackage似乎需要很長時間才能啓動子包
我有涉及在時間上循環異源隊列和處理對象1的處理。這個過程目前正在'設定邏輯'和其下降的東西。我被要求以循環的方式對其進行修改,以便爲我做出決定。
我選擇在1個包中實現隊列邏輯並在另一個包中實際處理。
這一切會比較好......考慮
我現在有過程和運行,但其緩慢的。每件9秒。顯然,我不能提出這個解決方案。 :-)
一件事我注意到,1.5 - 每個循環爲2秒都在ExecutePackage任務隊列中的循環。
我無法弄清楚如何獲得硬一些,我使用性能調整的閃爍的綠框方法。其他步驟似乎非常快。添加索引,將sql更改爲sps,所有常用技巧都有所幫助。
是UI realiable在所有關於框變爲白色/黃色/綠色的嗎?某些任務在進度選項卡中報告時間,有些似乎不是。所以我在計算黃色時間。
應該調用一個子包是否昂貴? 1我做的更改是我將'RunInASeparateProcess'更改爲FALSE。我這樣做,是因爲分裝,否則會產生以下消息:
錯誤:0xC0012024在腳本任務:任務「腳本任務」不能在該版本集成服務的運行。它需要更高版本的版本。 任務失敗:腳本任務
我也做了閱讀,似乎倡導多個包。任何人有任何計數器模式?我應該留在課程上嗎?我開始更換爲1包。複製/粘貼似乎不能很好地工作w/SequenceContainers。我還需要重新創建父包中的所有變量。可以,但我不知道這是答案。
有誰知道任何調整資源/網站/書籍,他們願意分享。
更新 - 我一直在努力弄清楚問題所在。我在想這是傳遞變量值的包配置。我不認爲是這樣。我可以將變量傳遞給另一個包,它沒有任何內容,並且速度很快。
我可以通過向它添加兩個連接管理器來使平凡的子包變慢。 我突然意識到我可能會在主包和子包中創建並斷開與Oracle服務器和SQL服務器的連接。
我在這個觀察中正確嗎?
有什麼辦法可以重用這兩個軟件包之間的連接嗎? 當我谷歌,大部分我看到的是傳遞連接字符串的建議。
更新 - 我將兩個軟件包合併爲一個。這個性能不是大約1.25秒每個項目,從大約9下降。我可以指出的唯一改變是我現在重複使用單個連接而不是多個連接。
謝謝,我感謝您提供的任何幫助。
格雷格
您是否將自己的表現置於在BIDS中運行時的表現?你使用的是什麼版本(我問你是因爲你提到了編譯,SSIS中沒有真正的編譯,但是2012比其他版本更接近)?由於您在BIDS中運行,您可能會看到額外的開銷。嘗試啓用日誌記錄,並將其作爲計劃作業從測試服務器運行,然後查看性能如何。 –
有時UI不可靠(2008版)。特別是當你在另一個軟件包中有軟件包時。它也比使用SQL作業在服務器上運行包慢。嘗試在服務器上運行包含SQL作業的包並分析速度。 –
威廉,我用術語編譯不正確。我們有BIDS 2005.我會嘗試在服務器上獲取軟件包。有變更控制程序來處理,所以我試圖在我去那裏之前儘可能地獲得。 – greg