要求將輸入記錄從源標記爲目標,如I,U,D,I插入,D刪除,u更新。源和目標是各種RDBMS系統。標記插入使用informatica更新和刪除目標中的源記錄
來源 - 甲骨文 目標 - Greenplum的
在SCD TYPE1使用查找我們能夠達到我和U標誌。由於查找是基於主鍵的equi連接,因此標記刪除的記錄是一項挑戰。不能使用左或最外連接
你的投入是非常可觀的
要求將輸入記錄從源標記爲目標,如I,U,D,I插入,D刪除,u更新。源和目標是各種RDBMS系統。標記插入使用informatica更新和刪除目標中的源記錄
來源 - 甲骨文 目標 - Greenplum的
在SCD TYPE1使用查找我們能夠達到我和U標誌。由於查找是基於主鍵的equi連接,因此標記刪除的記錄是一項挑戰。不能使用左或最外連接
你的投入是非常可觀的
我不知道我是否正確,但是假設你是基於沒有來自源中的數據刪除記錄瞭解的要求。
可能有一些方法。你應該有一個關鍵的來源和目標,以確定相同的記錄。
如果上述假設是正確的遵循了這一過程:
如果我對上述問題的理解錯誤,請更正。
正如Thilak提到的,源和目標是兩個不同的RDBMS,我們無法逆向減去。
你必須在兩步處理階段處理你在oracle中的臨時表中從源端收到的所有東西,然後在加載增量比較時根據臨時表來決定基於完全外連接的I/U/D。
假設您始終從源接收全部負載。如果源未發送完整數據,您將無法跟蹤刪除。
希望它有幫助!
除了已經提到的解決方案之外,爲了提高性能,您可以在加載之前將所有內容標記爲已刪除,然後相應地標記插入/更新。這樣你可以避免比較。
提供一些ETL邏輯 –
由於您「能夠實現I和U標誌」,因此我想您會詢問有關刪除操作的信息。更新YourTable set statusFlag = -1 - 你需要什麼? – Maciejg
Powerexchange是另一種可從oracle重做日誌中讀取以實時確定源數據庫記錄更改的informatica產品。這些記錄可以在DTL__CAPXACTION字段中標記爲I U或D.然後Powerexchange通過應用程序多組來源限定符連接到powercenter映射。
如果他們之後是該解決方案更內嵌別人取得了我與馬切伊去的假設 - 漂亮,整齊,易
你的意思是,我們需要設計2個映射,舞臺表加載一個映射。第二個映射使用階段作爲來源並進行比較。 –
是的。既然你正在處理兩種不同的RDBMS,這是一個更好的方法。您的資源再次應該始終發送滿載。 –