佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > informatical lookup的使用詳解

informatical lookup的使用詳解

熱門(mén)標(biāo)簽:地方門(mén)戶網(wǎng)站 呼叫中心市場(chǎng)需求 網(wǎng)站排名優(yōu)化 百度競(jìng)價(jià)排名 鐵路電話系統(tǒng) AI電銷 服務(wù)外包 Linux服務(wù)器

Lookup在ETL中是一種常見(jiàn)的操作,比如產(chǎn)品鍵到代理鍵的轉(zhuǎn)換,ID到name的轉(zhuǎn)換等,都可以通過(guò)lookup來(lái)實(shí)現(xiàn)。Informatica中的lookup transformation組件除了能實(shí)現(xiàn)這種普通的轉(zhuǎn)換,還可以用來(lái)更新緩慢變化維等,功能可謂強(qiáng)大。本文根據(jù)Informatcia8.1的聯(lián)機(jī)文檔,簡(jiǎn)單介紹一下informatica的lookup transformation。
中英文名詞對(duì)應(yīng):
•transformation:轉(zhuǎn)換
•connected:連接的
•unconnected:未連接的
•cache:緩存

一、lookup的功能
•獲得相關(guān)值:例如根據(jù)ID查找name
•執(zhí)行計(jì)算:例如得到計(jì)算公式得到一個(gè)結(jié)果
•更新緩慢變化維:根據(jù)lookup的條件決定是插入還是更新記錄等

二、rational lookups vs flat file lookups
lookup的源可以是關(guān)系數(shù)據(jù)庫(kù)中的表,也可以是平文件。對(duì)于關(guān)系表,可以從source或者target中選擇,也可以和平文件一樣,通過(guò)import向?qū)瓿伞?/P>

三、connected lookups vs unconnected lookups
informatica的轉(zhuǎn)換可以分為連接的和非連接的兩種。
所謂連接的轉(zhuǎn)換,就是該轉(zhuǎn)換是處于整個(gè)ETL的數(shù)據(jù)流中的,其輸入ort是直接從另外一個(gè)轉(zhuǎn)換,而非連接的,則獨(dú)立于主數(shù)據(jù)流之外,通過(guò)其他轉(zhuǎn)換中的表達(dá)式得到輸入數(shù)據(jù)。
連接的lookup轉(zhuǎn)換將處理數(shù)據(jù)流中的每一條數(shù)據(jù),對(duì)于不符合lookup條件的,則輸出預(yù)先指定的默認(rèn)值,并且可以更新動(dòng)態(tài)緩存。輸出值是所有的output/lookup port??梢允褂渺o態(tài)或者動(dòng)態(tài)的緩存。
未連接的lookup轉(zhuǎn)換只處理符合lookup條件的數(shù)據(jù),并且只返回一個(gè)值。對(duì)于不符合條件的,輸出NULL。未連接的lookup轉(zhuǎn)換可以被多次調(diào)用。輸出值在唯一的return port。只能使用靜態(tài)緩存。

四、cache
informatica對(duì)于lookup使用了cache機(jī)制。服務(wù)器對(duì)于cache的處理流程大致如下:
開(kāi)始處理第一條數(shù)據(jù)的時(shí)候,服務(wù)器會(huì)在內(nèi)存中建立緩存,緩存的大小有l(wèi)ookup轉(zhuǎn)換的一些屬性決定。對(duì)于lookup條件,建立一個(gè)index cache,而對(duì)于輸出值,則放在data cache中。
如果內(nèi)存緩存大小不夠,則會(huì)將溢出的緩存放到文件中。會(huì)話結(jié)束后,緩存會(huì)被清除,除非lookup緩存被設(shè)置為永久性的。
對(duì)于靜態(tài)的cache,是不允許lookup轉(zhuǎn)換對(duì)其進(jìn)行更新的。而動(dòng)態(tài)的cache,在lookup中如果發(fā)現(xiàn)不符合條件的值,可以對(duì)cache進(jìn)行插入或者更新處理。
當(dāng)然也可以選擇不使用任何cache。

五、lookup transmation組件
lookup共有5個(gè)組件,也就是在lookup轉(zhuǎn)換上點(diǎn)右鍵,選編輯后看到的5個(gè)標(biāo)簽頁(yè)。實(shí)際上,基本上informatica所有的transformation都差不多是5個(gè)組件。
其中第一個(gè)transformation頁(yè)簽,第二個(gè)ports頁(yè)簽和第五個(gè)metadata extensions頁(yè)簽基本都差不多。只是lookup的port除了通常的I(input),O(output)外,還有L(lookup),R(return)。其中return port只能有一個(gè),并且不能和其他轉(zhuǎn)換直接連接,只能通過(guò)LKP:表達(dá)式獲得。
第四個(gè)condition頁(yè)簽指定lookup的條件,實(shí)際上就是設(shè)置兩個(gè)表的關(guān)聯(lián)條件。
第三個(gè)properties是最重要的,可以在這里重寫(xiě)SQL來(lái)自定義lookup,設(shè)置符合條件返回多條記錄時(shí)的處理方式,設(shè)置是否使用動(dòng)態(tài)cache,以及cache的大小等等。

六、lookup tips
•在lookup條件列上創(chuàng)建index
•盡量使用=條件。如果有多個(gè)條件,盡量將=條件放到最前面
•對(duì)于小表,盡量使用cache,并且設(shè)置cache大小,使得整個(gè)table可以cache到內(nèi)存中
•如果lookup的表和源表在同一個(gè)數(shù)據(jù)庫(kù)中,并且cache不夠大,那么盡量使用join而不是lookup
•對(duì)于靜態(tài)的lookup,盡量使用永久cache(persistent cache),這樣多個(gè)session可以重用。

標(biāo)簽:蘭州 仙桃 湖南 崇左 黃山 衡水 銅川 湘潭

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《informatical lookup的使用詳解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    乐山市| 汉源县| 津南区| 安义县| 罗定市| 曲沃县| 洛浦县| 双桥区| 茂名市| 南阳市| 富阳市| 道真| 梨树县| 陇西县| 察隅县| 新乐市| 利川市| 友谊县| 汽车| 定兴县| 京山县| 青铜峡市| 双峰县| 新郑市| 石阡县| 玛多县| 定西市| 镇安县| 大埔县| 衡南县| 德安县| 明星| 德令哈市| 青龙| 克山县| 东辽县| 金塔县| 株洲市| 巴塘县| 夏河县| 若羌县|