日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Informatica PowerCenter使用介绍-转载

發布時間:2025/6/15 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Informatica PowerCenter使用介绍-转载 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載自:https://blog.csdn.net/wen_demon/article/details/44155639

1. INFORMATICA CLIENT的使用
1.1?Repository Manager 的使用
1.1.1 創建Repository。
前提:

a. 在ODBC數據源管理器中新建一個數據源連接至你要創建Repository的數據庫(例:jzjxdev)
b. 要在你要連接的數據庫中新建一個用戶(例:name: ETL password: ETL)
現在你可以創建一個Repository了。選擇Repository – Create Repository,輸入Repository Name(例:JZJX),Database Username(例:etl),Database Password(例:etl),ODBC Data Source(例:jzjxdev),Native Connect String(數據庫所在ip例:141.20.52.108)


1.1.2 添加Repository。
通過這一步你可以添加別人已經建好的Repository。
選擇Repository – Add Repository,輸入Repository Name(例:JZJX),Username(例:etl),點擊ok就可以看到名為JZJX的Repository在左邊的瀏覽器中,但是此時還看不到它的內容,要看到它的內容或者對它進行操作必須先連接它。


1.1.3 添加Folder
選擇Folder – Create,輸入文件夾名稱即可。


1.2 Designer 的使用
首先連接Repository,可以看到該Repository在Repository Manager中創建的文件夾。


1.2.1 Sources?
????Sources文件夾下的表是抽取的來源表。
????導入方法:

????選擇Tools菜單下的Source Analyzer,然后選擇Sources菜單下的Import from database,連接想要連接的數據庫,連接上后選擇你要抽取的表點擊ok你所選擇的表就會出現在Sources文件夾下。
????說明:上面的導入過程導入的只是表結構,你也可以自己創建來源表,只要你創建的表的結構跟真實存在的那張表的表結構一致就行。


1.2.2 Targets?
?????Targets文件夾下的表是抽取的目標表,也就是抽取結果的存放表.
?????導入方法: 選擇Tools菜單下的Warehouse Designer,然后選擇Targets菜單下的Import from database,連接想要連接的數據庫,連接上后選擇你要抽取的表點擊ok你所選擇的表就會出現在Targets文件夾下。
????說明:上面的導入過程導入的只是表結構,你也可以自己創建目標表,只要你創建的表的結構跟真實存在的那張表的表結構一致就行。


1.2.3 Mappings 的設計
????????選擇Tools菜單下的Mapping Designer才能進行Mapping的設計。
????????每個Mapping都由來源表,transformation和目標表組成,描述數據抽取的過程。來源表和目標表可以從Sources和Targets文件夾拖拽到工作區,但是transformation一般來說是需要自己創建的。Mapping的設計關鍵是transformation的使用,它的使用關系到數據抽取的正確性和效率。下面說明各個transformation的作用和用法。
(Active:表示該transformation可以改變通過它的數據的行數;
Passive:表示該transformation不改變通過它的數據的行數;
Connected:表示該transformation要連接到數據流;
Unconnected:表示該transformation可以不連接到數據流)


1.2.3.1 Source Qualifier
作用:根據查詢SQL文從關系表或平坦文件查出所要記錄
用法:創建好Source Qualifier(下簡稱SQ) 后,將需要的用的字段從來源表拖拽到SQ ,雙擊SQ,對SQ的屬性進行設置。
Select Distinct 屬性:選中的話表明結果記錄將去除重復值;
Tracing Level屬性: 共有四級,表示log的復雜程度;
Number Of Sorted Ports屬性: 排序的字段個數,值大于0時Sql Query中的sql 文將出現order by 從句;
Sql Filter屬性: 屬性值將出現在Sql Query屬性值的where表達式中;
User Defined Join屬性: 用戶如果要定義外部連接可在此寫(例: {REG_CUSTOMER LEFT OUTER JOIN PURCHASES on
(REG_CUSTOMER.CUST_ID = PURCHASES.CUST_ID AND PURCHASES.AMOUNT > 100.00) })
Sql Query屬性:值是一條sql 文,session運行時會執行這條sql 文進行查詢。
命名方式:SQ_Name
類型:Active/Connected
注意:SQ的輸入只能來自來源表; User Defined Join屬性值必須用{}括起來;在更改了SQ的屬性值之后一定要點擊Sql Query屬性的
generate sql按鈕重新生成sql文。


1.2.3.2 Update Strategy
作用:決定該行進行插入,刪除,更新,忽略中的哪一種操作
用法:創建好Update Strategy(下簡稱US)后,將需要的用的字段從transformation拖拽到US ,雙擊US,對US的屬性進行設置。US的設
置關鍵是Update Strategy Expression屬性的設置,這個表達式使用IIF 或DECODE 函數對記錄的每一行進行判斷,為每一行賦予
DD_INSERT,DD_UPDATE,DD_DELETE,DD_REJECT(這四個是常量,值分別為0,1,2,3)中任意一個值,表明該行在數據庫中將進行
何種操作。
命名方式:UPD_Name
類型:Active/Connected
注意:mapping中有US時,mapping對應的session的在配置屬性時必須把Treat rows屬性設置為Data Driven,否則US將不起作用。


1.2.3.3 Expression
作用:計算一個值
用法:創建好expression_r(下簡稱EXP)后,將需要的用的字段從來源表拖拽到EXP,雙擊EXP,
?????新增輸出端口,編輯該端口的表達式。
命名方式:EXP_Name
類型:Passive/Connected
注意:要進行列運算一般用這個transformation; 此種transformation可以使用本地變量


1.2.3.4 Stored Procedure
作用:調用一個存儲過程
用法:創建Stored Procedure(下簡稱SP)的時候連接數據庫選擇必要的存儲過程。SP有連接和不連接到數據流兩種用法。
連接到數據流方式跟一般的transformation類似,通過拖拽端口來實現數據流。
不連接到數據流分表達式調用和Pre-/Post Session兩種方式。表達式調用方式中SP被Mapping中另一個transformation 中的表達式
調用。Pre-/Post Session方式就是在Session的屬性中配置SP的運行時間,Source Pre-load(Session從源表查詢數據之前),Source
Post-load(Session從源表查詢數據之后),Target Pre-load(Session將數據插入目標表之前),Target Post-load(Session將
數據插入目標表之后)
命名方式:SP_Name
類型:Passive/Connected or Unconnected
注意:


1.2.3.5 Sequence Generator
作用:產生主鍵
用法:創建好Sequence Generator(下簡稱SEQ)后,雙擊SEQ,對SEQ的屬性進行設置。Start Value屬性是開始值,此屬性只在選擇了
Cycle選項才有效;Increment By 屬性值是每次增加的值;End Value屬性值是結束值;Current Value屬性值是當前開始值;Cycle選
項被選擇的話NEXTVAL的值達到End Value值之后會重新從Start Value開始;Reset選項被選擇的話,服務器會為每個使用了該SEQ的
session的NEXTVAL值都從Current Value開始。
命名方式:SEQ_Name
類型:Passive/Connected
注意:這是一個只有兩個輸出端口沒有輸入端口的transformation.;
??????如果該SEQ時可重復使用的話,不能選擇Reset選項。


1.2.3.6 Aggregator
作用:執行分組聚合運算
用法:創建好Aggregator(下簡稱AGG)后,將需要的用的字段從其他transformation拖拽到AGG ,雙擊AGG,在端口tab中每個端口有
group by 選項。鉤上想要分組的列,新增端口,編寫聚合表達式實現分組聚合運算。
命名方式:AGG_Name
類型:Active/Connected
注意:可使用本地變量


1.2.3.7 Filter
作用:過濾記錄
用法:創建好Filter(下簡稱FIL)后,將需要的用的字段從transformation拖拽到FIL ,雙擊FIL,對FIL的屬性進行設置。FIL的配置主
要是對Filter Condition的配置,Filter Condition 寫入類似where條件的表達式即可。
命名方式:FIL_Name
類型:Active/Connected
注意:


1.2.3.8 Lookup
作用:查詢值
用法:創建Lookup(下簡稱KP)的時候選擇要查詢的表。和Stored Procedure一樣SP有連接和不連接到數據流兩種用法。
連接到數據流方式將要關聯查詢的字段從其他的transformation拖拽過來,然后雙擊LKP進行屬性的配置。Lookup Policy On
Multiple Match屬性表明當查詢到多個行時采取取第一行,取第二行,報錯中哪個策略.Lookup Condition 屬性值是查詢的條件。
Lookup Sql Override屬性值是查詢執行的Sql文,我們可以在里面直接寫Sql。Lookup Caching Enabled屬性表明是否使用緩存,此項
一般選擇為好,有利提高效率。Loopup Cache Persistent屬性表明是否使用永久的緩存。
命名方式:LKP_Name
類型:Passive/Connected or Unconnected
注意:如果Lookup表的類型是來源表的話,請盡量使用Joiner;
一個已連接的LKP不能再被其他transformation的表達式調用;
如果查詢表在session運行過程中不會改變,使用Loopup Cache Persistent屬性可提高性能;
盡量不要在Lookup Sql Override中書寫order by子句,因為cached LKP默認有order by ;


1.2.3.9 Joiner
作用:連接查詢來自不同數據庫的表或平坦文件
用法:創建好Joiner(下簡稱JNR)后,將需要的用的字段從transformation拖拽到JNR ,雙擊JNR,對JNR的屬性進行設置。用于連接的
兩個表一個稱為detail表,一個稱為master表。JNR屬性中可配置Join Type(連接類型)為Normal Join,Master Outer Join,Detail
Outer Join 和Full Outer Join中任意一種。Normal Join相當于常規的inner join; Master Outer Join相當于常規的Detail left
outer join Master;Detail Outer Join相當于常規的Detail right outer join Master; Full Outer Join相當于常規的full outer
join。Join Condition屬性值就是常規sql文on 后帶的條件。
命名方式:JNR_Name
類型:Active/Connected
注意:盡量使用Normal Join,Master Outer Join.這兩個的效率比另外兩個更好


1.2.3.10 Normalizer
作用:格式化記錄,這些記錄可以是來自COBOL源
用法:
命名方式:NRM_Name
類型:Active/Connected
注意:


1.2.3.11 Router
作用:根據一組表達式將記錄分類路由到多個transformation
用法:創建好Router(下簡稱RTR)后,將需要的用的字段從transformation拖拽到RTR,雙擊RTR,對RTR的屬性進行設置。在Group tab
中添加組,為每組編輯該組的過濾條件。
命名方式:RTR_Name
類型:Active/Connected
注意:組過濾條件表達式的計算值必須是真或者假。


1.2.3.12 Rank
作用:排序記錄,只輸出最頂層或最低層的n個記錄
用法:創建好Rank(下簡稱RNK)后,將需要的用的字段從transformation拖拽到RNK,雙擊RNK,對RNK的屬性進行設置。在Ports tab中
有一個名為‘R’的列,選擇你要排序的列。你還可以選擇你想分組的列。在Properties tab中Top/Bottom屬性,Top表示選擇頂層的
記錄,Bottom表示選擇底層的記錄; Number Of Ranks屬性值是整數,表示要選擇的記錄條數。假設你在‘R’列中選擇了名為’
Price’的列,而且Group By選擇了‘Name’列,Top/Bottom屬性選擇的是‘Top’, Number Of Ranks屬性值是2,那么將抽取過程是
這樣的:以name分組取出每組中 Price最大的2列記錄。
命名方式:RNK_Name
類型:Active/Connected
注意:可以使用本地變量


1.2.3.13 ERP Source Qualifier
作用:根據查詢SQL文從ERP文件查出所要記錄
用法:
命名方式:
類型:Active/Connected
注意:


1.2.3.14 XML Source Qualifier
作用:根據查詢SQL文從XML文件查出所要記錄
用法:
命名方式:XSQ_Name
類型:Passive/Connected
注意:


1.2.4 Mapping Parameters(參數) 和 Variables(變量)的使用
如果你在一個mapping中多次用到同一個值,又或者mapping中要用到一個在session運行才能決定的值,這時候可以使用mapping
parameters或variable。添加參數或變量的方法是:選擇Mappings-Parameters and Variables,在窗口新增變量或者參數,并對它的
數據類型,數據大小,初始值進行設置。添加的參數和變量在本mapping的transformation的表達式中就可以使用了。這些參數和變
量的值還可以設置在.txt文件中,建session或者batch的時候把這個文件的路徑設置在Parameter輸入框中就行了。
Mapping參數變量的命名方式:$$NAME
存放參數變量的.txt文件的格式:folder_name可寫可不寫
[folder_name.session_name]???
parameter_name=value
variable_name=value
mapplet_name.parameter_name=value
[folder_name.session2_name]
parameter_name=value
variable_name=value
mapplet_name.variable_name=value
[folder2_name.session_name]
parameter_name=value
variable_name=value
mapplet_name.parameter_name=value


1.2.5 Mapping 的調試
選擇Mappings–Debugger–Start Debugger,在點擊‘下一步’的過程中選擇調試過程運行在哪臺服務器然后為來源表選擇數據庫,
最后到完成。等調試初始化好之后點擊Mappings–Debugger–Continue(或按F5),即可開始調試,選擇某個目標表即可看該表的結果
數據。如果還想看中間某個transformation的數據,在開始調試前為該transformation增加一個斷點。


1.3?Server Manager 的使用
1.3.1??Register Server(注冊服務器)
任何session都必須運行在某個服務器上,所以如果Server Manager里沒有服務器的話必須注冊一個,當然你也可注冊多個服務器。
服務器的注冊過程如下:
選擇Server Configuration – Register Server,Server輸入 的是要注冊的服務器的名稱;Host Name 輸入的是運行了informatica
server的機器名或iprotocol選擇TCP/IPort Number輸入4001。最下面的是服務器的變量設置,設置的是session或batch運行時一些
文件的存放位置,比如說log文件bad 文件 cache文件,一般不用更改。這樣一個服務器就注冊到repository了,不過后面你可以雙
擊它重新編輯。


1.3.2?Add DataBase Connection(添加數據庫連接)
選擇Server Configuration – DataBase Connection,點擊Add,然后選擇數據庫的類型。不同類型的數據庫配置起來不一定一樣,下面說明Oracle 和SQL Server兩種數據庫連接的配置。
Oracle類型數據庫連接配置:Data Source 輸入數據源名稱;User Name輸入數據庫連接的用戶名;Password輸入數據庫連接的密碼;Connect String 輸入Oracle TNS 服務名。
SQL Server 類型數據庫連接配置: Data Source 輸入數據源名稱;User Name輸入數據庫連接的用戶名;Password輸入數據庫連接的密碼;Database Name輸入數據庫名稱;Server Name輸入數據庫的ip地址;Domain Name輸入數據庫的域名。


1.3.3?Add Session(添加抽取任務)
Mapping 只是數據抽取過程的設計,要使這個過程運行必須為該Mapping建立對應的session,然后運行該session。選擇Operations-Add Session,在窗口中選擇一個Mapping點擊ok會出現編輯該session的窗口。
Session輸入框輸入該session的名稱;
server選擇該session將運行在的服務器;
Treat rows有Insert,Delete,Update,Data Driven四個選項,表明抽取出來的數據在目標表中作何種操作,只有在session對應的mapping中有Update Stategy時才能選擇Data Driven而且也必須選擇Data Driven;
Source 框選擇來源表所在的數據庫;
Target Options 中的Insert,Update(as Update),Update(as Insert),Update(else Insert),Delete,Truncate table 選項的意思分別是:將insert作insert操作,將Update 作insert操作,將Update先做Update操作不成功再作insert操作,將delete作delete操作,在對目標表操作前刪除目標表所有數據。這些選項如果與Update Stategy沖突server將以這里的設置為準,也就是說這里的設置可以覆蓋Update Stategy的設置;Parameter輸入框中輸入session要用到的參數或變量的所在文件的路徑;其他設置比較簡單或者保持原來的值即可,這里就不再詳細說明了。除了在添加 session的過程中可編輯session之外,雙擊已添加的session也對session重新設置。
注:如果mapping 中有Joiner的話,session的編輯窗口的Source Type就變成heterogeneous(不同類),這樣就無法通過設置Source
來設置來源表的位置,只能在Source Location tab中為每個來源表設置位置。


1.3.4?Add Batch(添加批操作任務)
添加Batch可以將一系列的session串起來,這樣就可以讓必須按順序執行的session有序的執行。添加方法:選擇Operations-Add Batch,在窗口中對batch進行編輯。Batch輸入框中輸入batch 的名稱;
Parameter輸入框中輸入batch中的session要用到的參數或變量的所在文件的路徑,由于每個session都可以設置自己的parameter,所以batch中可以不設置,即使batch的parameter進行了設置也會被各個session自己的parameter設置所覆蓋,但如果session用到了parameter在同一個文件中的話,把parameter文件的位置設置在batch的parameter輸入框就顯得更方便;Enabled選項表明是否讓該batch有效;Concurrent選項表明是否讓batch中的所有session并行地運行;Schedule中可設置batch的運行時間和運行頻率。


1.3.5?Session和Batch 的運行
右鍵單擊要運行的session或者batch,選擇start即可讓該session或者batch立刻運行。如果你的session或者batch的Schedule設置不是選擇的‘Run only on demand’,那么該session或者batch就會在設置完后就處在Scheduled狀態,時間一到就會自動運行。(可以右擊服務器選擇monitor來監視運行在該服務器下的session或者batch當前狀態)。

轉載于:https://www.cnblogs.com/fameg/p/9961475.html

總結

以上是生活随笔為你收集整理的Informatica PowerCenter使用介绍-转载的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。