2014-03-12 97 views
0

我有一個映射,其中我的源代碼是一個視圖和一個表,其中源限定符正在執行連接,並且具有諸如分類器,聚合器,路由器更新策略和最終2個目標的轉換,以插入和更新到同一個表。轉換映射太慢

但是,在運行時,所有轉換過於耗時。而如果我直接從源連接到目標,它的工作速度很快。

我試着在源限定符內進行排序,它出來的速度很快,而當我執行Source-sorter-target時,它自己閱讀速度太慢,而且根本不寫。

任何人都可以幫助可能是什麼原因?

回答

1

如果您可以發佈代碼,有人可能會發現任何明顯的瓶頸。否則,任何一次轉換或一次轉換中的一行都可能是負責任的 - 您所希望的最佳答案將是關於最佳實踐的一般答案,可能不是您要查找的答案。

0

這看起來像緩存問題。檢查日誌以獲取有關建議緩存大小的信息,將其四捨五入並在會話(映射選項卡)中手動分配到分揀機。 源 - >選機 - 目標的工作方式如下:

  1. 讀取所有源數據並生成緩存
  2. 一旦所有數據被讀取,進行排序。
  3. 一旦所有數據被排序,就開始寫入。

因此,「慢讀」意味着它被緩存文件延遲。預計不會寫作 - 你如何在分揀之前開始寫作?

旁註:

  • 在關係表中寫排序使得幾乎沒有任何意義。
  • 聚合排序也沒有意義。
  • 如上所述,代碼會很有用。
  • 可以找到一些最佳實踐here
+0

嗯,這個問題在臨時解決,當我添加一個索引到臨時表。還需要制定一個permanat解決方案。這是發生在擁有1000萬以上數據的大型餐桌上 – user3346563

0

您可以從會話日誌統計中識別瓶頸。然後閱讀PowerCenter幫助中的「性能調優指南」,以消除瓶頸。