我的目標是使用Informatica ETL工具的Hive表。使用Informatica的Hive更新
Hive早期版本不支持更新。 那麼我應該如何更新記錄在這種情況下。 可以使用Hive ACID和事務功能來使用Hive更新功能。
我的目標是使用Informatica ETL工具的Hive表。使用Informatica的Hive更新
Hive早期版本不支持更新。 那麼我應該如何更新記錄在這種情況下。 可以使用Hive ACID和事務功能來使用Hive更新功能。
你應該看看事件採購(https://msdn.microsoft.com/en-us/library/dn589792.aspx)。
將您的數據庫視爲存儲事件而不是項目。因此,如果您想要在數據庫中使用某個counter
對象,而不是將counter
從0更新爲1到2等,則只需在增量時插入新文檔,然後獲取這些文檔的總和/數量。
Informatica支持從Informatica 9.6 HF3版本更新配置單元表提供表支持ACID,有關更多信息,您可以參考此鏈接(https://cwiki.apache.org/confluence/display/Hive/Hive+Transactions),但不是這樣做,我寧願在兩個步驟過程
1)確定僅存在於目標中的所有記錄以及僅存在於階段數據中的記錄2)合併這兩個並將它們加載到臨時表中。 3)最後重新命名臨時表到實際的目標表名
以上會的工作只有SCD型1實現
更新是不是最好的選擇,而工作蜂巢,創建中間臨時表是更好的設計。更新現有Hive表的步驟 -
插入更新事件並做一個map/reduce來獲得當前答案? – jpopesculian
我想使用informatica更新配置單元數據,但配置單元不允許更新,所以任何解決此問題? – shashank