Informatica 簡單使用


 

1. Informatica簡介

① Repository manager 主要用來維護資料庫的目錄,對象,建完對象可以創建demo的folder。

② Administration Console是完全基於web的,管理所有的節點,服務,在里面包括資料庫的一些用戶,權限等信息。

③ Designer主要用來設計mapping。Mapping是informatica的一個映射,也就是說是ETL的一個規范,包括對源,目標,過程的設計。

④ workflow主要用於將mapping實例化,也就是設計一個session,如果session很多的話需要將它們設計成一個串行或者並行的過程,它們組成的session就叫做workflow,即工作流。

⑤ workflow monitor用來監控、執行workflow。

⑥ 控件:Source Qualified Transformation:ETL經常會用到的組件,對數據源,包括文件,也包括數據表進行抽取。無論數據源是表還是平面文件源,都會用到該組件。

2. 新建帶過濾條件的workflow

D:

① 選在source,import source ,odbc data source中選擇oracle的odbc設置,如果沒有,要在管理工具中自行設置,具體如圖。

 

 

② 同理,在target中設置目標數據表的連接,然后設置mapping,設置成功之后,轉入w中設置工作流,

W:

① 在edit task->mapping中,source和target分別要設置源和目標的連接驅動。

② 在edit task->properties->parameter filename里面寫入參數所在文件夾的地址(該參數在服務器的目錄下,是事先設定好的文件)。

③ 在左項目條件source 中,edit task->mapping->source filter里面寫入過濾的參數條件。

④ 在左項目條件target中,edit task->mapping->pre SQL里面寫入執行前的更新數據表語句。

注意事項:

目標表的的數據表如果帶有系統目錄前綴,在設置mapping的連接條件時將無法識別前綴,因此沒有辦法傳輸數據。

3. 在Designer中設置過濾參數問題

① 設置參數之后,參數的默認值是字符如圖,M中運行結果錯誤,無法解析參數,數據沒有被導入。

 

 

4. 往GP數據庫中導入平面文件源。

① 要將所導入的文件放入服務器的目錄下,先在informatica控制台設置目錄。

 

 

② 設置workflow時,在source里設置如下目錄,其中source filetype包含兩種情況,Direct設置如下圖

 

 

 

③ indirect方式是選擇表名列表文件,按文件列表運行。

 

 

5. 設置同時將兩個表導入一個數據表中的workflow

6. 兩個並無關聯的mapping一起運行

① 在target load plan里面設置mapping運行的先后順序。

7. 帶expression Transformation組件的workflow

① 導入源表

② 手工創建目標表,可以在target菜單中選擇great創建,也可以復制目標庫中類似的表進行修改。前提是目標庫中存在這樣的表。

③ 手工創建目標表,target菜單下,generate/execute SQL

④ Filtertransformation組件:過濾組件將傳到目標表的數據進行篩選,過濾。過濾不能對原來的表字段進行修改。值改變傳遞值的行數。

⑤ Expression Transformation組件:不改變抽取數據的行數,是被動的函數組件。不能實現匯總級的函數的操作。執行的先后順序,先執行input,后執行valuable,valuable相當於一個局部的變量,按照順序執行,后執行output。

⑥ Reusable Transformation組件:

8. Workflow的調度方式

① 手工執行(現在都是在手工執行)

② Workflow scheduler(調度程序調度)

③ pmcmd startworkflow

④ command task

⑤ worklet

9. informatica語法規則

① 輸入的字符用 單引號 擴起來,連接字符用 || ,基本跟oracle保持一致。

② DECODE(IN_GENDER, 'M', 'MALE', 'N', 'FEMALE', 'UNK')

DECODE(TRUE,

IN_AGE < 20, 'LESS THAN 20',

IN_AGE  >= 20  AND  IN_AGE <= 29,  '20 TO 29',

IN_AGE  >= 30  AND  IN_AGE <= 39,  '30 TO 39',

IN_AGE  >= 40  AND  IN_AGE <= 49,  '40 TO 49',

IN_AGE  >= 50  AND  IN_AGE <= 60,  '50 TO 60',

IN_AGE  >  60, 'GREATER THAN 60'

)

DECODE(字段名, '條件1', '返回值1', '條件2', '返回值2', '缺省值')


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM