版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
ETL數(shù)據(jù)預(yù)處理技術(shù)主講人:趙美枝任務(wù)五數(shù)據(jù)轉(zhuǎn)換任務(wù)5.1數(shù)據(jù)合并Kettle數(shù)據(jù)轉(zhuǎn)換可以完成數(shù)據(jù)合并、排序及運(yùn)算功能,本節(jié)主要學(xué)習(xí)數(shù)據(jù)高級(jí)轉(zhuǎn)換——運(yùn)算。數(shù)據(jù)合并實(shí)際應(yīng)用中,對(duì)源文件數(shù)據(jù)進(jìn)行轉(zhuǎn)換時(shí),往往采取轉(zhuǎn)換存儲(chǔ)格式或數(shù)據(jù)類型實(shí)現(xiàn),而kettle可以省去文件轉(zhuǎn)換環(huán)節(jié),在不改變?cè)次募幕A(chǔ)上,對(duì)其數(shù)據(jù)進(jìn)行一系列運(yùn)算,得到所需結(jié)果。01.數(shù)據(jù)集連接02.目錄多種不同數(shù)據(jù)源合并CONTENTS子任務(wù)5.1.1數(shù)據(jù)集連接該控件可以完成多種不同的數(shù)據(jù)源的橫向整合,如Excel文件、文本文件、數(shù)據(jù)表等,整合后的數(shù)據(jù)字段會(huì)增加,但記錄數(shù)不會(huì)改變?cè)谀衬昙?jí)月考結(jié)束后,語(yǔ)文、數(shù)學(xué)、英語(yǔ)老師各自對(duì)全班學(xué)生的單科成績(jī)進(jìn)行了統(tǒng)計(jì),現(xiàn)需要將三科成績(jī)合并為一個(gè)文件。任務(wù)提出:數(shù)據(jù)準(zhǔn)備準(zhǔn)備如下三個(gè)文件:注意:合并前的各文件需按相同的字段進(jìn)行排序Step1:創(chuàng)建轉(zhuǎn)換使用Kettle工具,創(chuàng)建一個(gè)轉(zhuǎn)換,命名為“多數(shù)據(jù)轉(zhuǎn)換”,將結(jié)果導(dǎo)出為Excel文件形式,分別將Excel文件輸入重命名,如下圖:
Step2:配置“語(yǔ)文成績(jī)”打開“語(yǔ)文成績(jī)”對(duì)話框,先點(diǎn)擊“文件或目錄”右側(cè)的“瀏覽”,添加文件所在路徑,再單擊“增加”,將文件添加到“選中的文件”中。Step2:配置“語(yǔ)文成績(jī)”切換到“工作表”選項(xiàng)卡下,獲取工作表的名稱為“sheet1”,起始行、起始列均設(shè)置為0(這里的設(shè)置根據(jù)導(dǎo)入的Excel文件中的實(shí)際表名和起始行列而定)Step2:配置“語(yǔ)文成績(jī)”切換到“字段”選項(xiàng)卡下,單擊【獲取來(lái)自頭部數(shù)據(jù)的字段】,得到文件中各字段及其屬性,如下左圖,預(yù)覽記錄如下右圖:Step3:配置“數(shù)學(xué)成績(jī)”重復(fù)以上步驟,配置“數(shù)學(xué)成績(jī)”與“英語(yǔ)成績(jī)”,預(yù)覽記錄如下圖:Step3:配置“排序記錄”雙擊“排序記錄”控件,打開對(duì)話框,在“字段名稱”處選擇“學(xué)號(hào)”,設(shè)置為升序排序,然后點(diǎn)擊“確定”按鈕,如下圖Step3:配置“排序記錄”重復(fù)以上步驟,配置“排序記錄2”、“排序記錄3”Step4:配置“MultiWaymergejoin”打開“MultiWaymergejoin”
對(duì)話框,將其改名為“多路數(shù)據(jù)合并”,設(shè)置如下圖:
joinStep4:配置“MultiWaymergejoin”【Multiwaymergejoin】組件的參數(shù)含義如下表:參數(shù)名稱說(shuō)明Stepname表示多路數(shù)據(jù)合并連接組件名稱,在單個(gè)轉(zhuǎn)換工程中,名稱必須唯一。默認(rèn)值是【Multiwaymergejoin】的組件名稱InputStepN表示合并連接的第N(N=1,2,3,4,…)個(gè)輸入組件的名稱,在下拉框中選擇輸入組件名稱。默認(rèn)值為空J(rèn)oinKeys表示對(duì)應(yīng)所在行InputStepN輸入組件的連接關(guān)鍵字段。單擊所在行的【SelectKeys】按鈕,在彈出的對(duì)話框中選擇字段名稱。默認(rèn)值為空J(rèn)oinType表示多個(gè)源數(shù)據(jù)表的連接類型。在下拉框中選擇連接類型,默認(rèn)值為INNER。連接類型如下FULLOUTER:連接結(jié)果包含來(lái)自多個(gè)數(shù)據(jù)源表的所有記錄,而不匹配的記錄,字段值被系統(tǒng)設(shè)為空(null)INNER:只有在多個(gè)源數(shù)據(jù)表中具有相同關(guān)鍵字段值的記錄才會(huì)包含在連接結(jié)果中(內(nèi)連接)Step4:配置“字段選擇”打開“字段選擇”對(duì)話框,切換到“移除”選項(xiàng)卡下,如下圖設(shè)置要移除的字段,單擊“確定”完成設(shè)置Step3:配置“公式”編輯“總分”字段,輸入總分的計(jì)算公式,如下圖,注意此處的符號(hào)均為英文符號(hào),單擊【ok】按鈕完成。Step4:配置“Excel輸出”打開“Excel輸出”對(duì)話框,設(shè)置結(jié)果文件名如下圖:Step4:配置“Excel輸出”輸出字段如下圖:Step5:運(yùn)行轉(zhuǎn)換查看“步驟度量”,如下左圖,發(fā)現(xiàn)讀取了156條,寫入了52條記錄,合并后的而部分內(nèi)容如下右圖所示。子任務(wù)5.1.2記錄集連接記錄集連接是將具有相同關(guān)鍵字字段的兩個(gè)記錄進(jìn)行合并某單位的職工信息如下圖,將兩個(gè)文件合二為一。任務(wù)提出:Step1:創(chuàng)建轉(zhuǎn)換使用Kettle工具,創(chuàng)建一個(gè)轉(zhuǎn)換,命名為“公式應(yīng)用”
,并添加“Excel輸入”控件、“排序記錄”、“記錄集連接”、“Excel輸出”控件,如下圖:Step2:配置“Excel輸入”打開“Excel輸入”對(duì)話框,修改步驟名稱為“職工信息1”,,點(diǎn)擊“文件或目錄”右側(cè)的“瀏覽”,添加文件所在路徑,再單擊“增加”,將文件添加到“選中的文件”中。Step2:配置“Excel輸入”單擊【字段】選項(xiàng)卡中的“獲取來(lái)自頭部數(shù)據(jù)的字段”,得到相應(yīng)字段,并將“編號(hào)”的類型改為“integer”,單擊【確定】完成配置。Step3:配置“Excel輸入”重復(fù)step2操作,配置“Excel輸入2”,將其改名為“職工信息2”,如下圖:Step4:配置“排序記錄”打開“排序記錄”對(duì)話框,在字段名稱處選擇“編號(hào)”,設(shè)置升序排序,單擊【確定】完成配置Step5:配置“排序記錄2”打開“排序記錄2”對(duì)話框,在字段名稱處選擇“編號(hào)”,設(shè)置升序排序,單擊【確定】完成配置Step6:配置“記錄集連接”雙擊“記錄集連接”控件,打開對(duì)話框,分別設(shè)置“第一個(gè)步驟”為“排序記錄”,第二個(gè)步驟”為“排序記錄2”,連接類型默認(rèn)設(shè)置“INNER”,連接字段為“編號(hào)”,因?yàn)閮蓚€(gè)文件的關(guān)鍵字為“編號(hào)”Step6:配置“記錄集連接”【記錄集連接】組件的參數(shù)包含組件的基礎(chǔ)參數(shù)和連接字段表參數(shù),有關(guān)參數(shù)說(shuō)明如表所示。Step7:配置“Excel輸出”雙擊“Excel輸出”控件,打開對(duì)話框,設(shè)置結(jié)果文件名,如左圖Step7:配置“Excel輸出”切換到【字段】選項(xiàng)卡,單擊【獲取字段】。此處也可以刪除“編號(hào)_1”字段,點(diǎn)擊【確定】完成設(shè)置Step8:運(yùn)行轉(zhuǎn)換運(yùn)行轉(zhuǎn)換,打開“職工完整信息.xlsx”,可以看到兩個(gè)文件的信息均有呈現(xiàn)。Step3:配置“JavaScript代碼”這里組件名稱用默認(rèn)值“JavaScript代碼”。在【JavaScript】編輯區(qū)中,編輯JavaScript腳本如下。var獎(jiǎng)牌總數(shù)=0;for(vari=0;i<getInputRowMeta().size();i++){varvalueMeta=getInputRowMeta().getValueMeta(i);if(valueMeta.getTypeDesc().equals("Number")){
獎(jiǎng)牌總數(shù)=獎(jiǎng)牌總數(shù)+str2num(row[i]);}}Step3:配置“JavaScript代碼”單擊【獲取變量】,字段框中會(huì)出現(xiàn)所有字段,選中需要?jiǎng)h除的行,右單擊然后點(diǎn)擊“刪除選中的行”,只保留“獎(jiǎng)牌總數(shù)”,對(duì)該字段的設(shè)置如左圖。單擊【確定】按鈕完成控件配置。Step4:運(yùn)行轉(zhuǎn)換單擊工作區(qū)上方的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《情商課程》課件
- 2023-2029年中國(guó)甘肅旅游行業(yè)市場(chǎng)全景評(píng)估及投資前景展望報(bào)告
- 電路板保護(hù)膠帶行業(yè)行業(yè)發(fā)展趨勢(shì)及投資戰(zhàn)略研究分析報(bào)告
- Unit 1 課后培優(yōu)分級(jí)練(解析版)
- 2024-2030年中國(guó)鋼絲繩探傷儀行業(yè)發(fā)展監(jiān)測(cè)及投資戰(zhàn)略研究報(bào)告
- 工程測(cè)量的實(shí)習(xí)報(bào)告
- 2024-2027年中國(guó)用電信息采集系統(tǒng)行業(yè)發(fā)展監(jiān)測(cè)及投資戰(zhàn)略研究報(bào)告
- 中國(guó)滌綸短纖市場(chǎng)運(yùn)行態(tài)勢(shì)及行業(yè)發(fā)展前景預(yù)測(cè)報(bào)告
- 桑黃項(xiàng)目可行性研究報(bào)告
- 2025鋼結(jié)構(gòu)承包合同書
- DES算法Matlab代碼
- 沙特的礦產(chǎn)資源開發(fā)概況及其商機(jī)
- 高一生物必修一期末試題(附答案)
- 安全事故應(yīng)急響應(yīng)程序流程圖(共1頁(yè))
- 交通事故快速處理單(正反打印)
- 2020國(guó)際大專辯論賽順境或逆境更有利于人的成長(zhǎng)
- 三年級(jí)_上冊(cè)牛津英語(yǔ)期末試卷
- 西師版五年級(jí)數(shù)學(xué)上冊(cè)期末測(cè)試題(共6頁(yè))
- 損傷容限設(shè)計(jì)基本概念原理和方法PPT課件
- 水壓式沼氣池設(shè)計(jì)
- 巷道及采區(qū)車場(chǎng)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論