小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

大數(shù)據(jù) ETL 處理工具 Kettle 入門實(shí)踐

 520jefferson 2021-07-06
Kettle 簡介

Kettle 是什么

Kettle 是一款國外開源的 ETL 工具,對商業(yè)用戶也沒有限制,純 Java 編寫,可以在 Window、Linux、Unix 上運(yùn)行,綠色無需安裝,數(shù)據(jù)抽取高效穩(wěn)定。Kettle 中文名稱叫水壺,它允許管理來自不同數(shù)據(jù)庫的數(shù)據(jù),把各種數(shù)據(jù)放到一個(gè)壺里,然后以一種指定的格式流出。Kettle 中有兩種腳本文件,TransformationJob, Transformation 完成針對數(shù)據(jù)的基礎(chǔ)轉(zhuǎn)換,Job 則完成整個(gè)工作流的控制。通過圖形界面設(shè)計(jì)實(shí)現(xiàn)做什么業(yè)務(wù),并在 Job 下的 start 模塊,有一個(gè)定時(shí)功能,可以每日,每周等方式進(jìn)行定時(shí)。

Kettle 的核心組件

名稱功能
Spoon通過圖形接口,允許你通過圖形界面來設(shè)計(jì) ETL 轉(zhuǎn)換過程(Transformation)
Pan運(yùn)行轉(zhuǎn)換的命令行工具
Kitchen運(yùn)行作業(yè)的命令行工具
CarteCarte 是一個(gè)輕量級(jí)別的 Web 容器,用于建立專用、遠(yuǎn)程的 ETL Server
  • 作業(yè)和轉(zhuǎn)換可以在圖形界面里執(zhí)行,但這只適合在開發(fā)、測試和調(diào)試階段。在開發(fā)完成后,需要部署到生產(chǎn)環(huán)境中  Spoon 就很少用到了,Kitchen 和 Pan 命令行工具用于實(shí)際的生產(chǎn)環(huán)境。
  • 部署生產(chǎn)階段一般需要通過命令行執(zhí)行,需要把命令行放到 Shell 腳本中,并定時(shí)調(diào)度這個(gè)腳本。
  • Kitchen 和 Pan 工具是 Kettle 的命令行執(zhí)行程序,只是在 Kettle 執(zhí)行引擎上的封裝,它們只是解釋命令行參數(shù),調(diào)用并把這些參數(shù)傳遞給 Kettle 引擎。
  • Kitchen 和 Pan 在概念和用法上都非常相近,這兩個(gè)命令的參數(shù)也基本是一樣的。唯一不同的是 Kitchen 用于執(zhí)行作業(yè),Pan 用于執(zhí)行轉(zhuǎn)換。
Kettle 概念模型

Kettle 的執(zhí)行分為兩個(gè)層次:Job(作業(yè),.kjb 后綴)和 Transformation(轉(zhuǎn)換,.ktr 后綴)

圖片
img

簡單地說,一個(gè)轉(zhuǎn)換就是一個(gè) ETL 的過程,而作業(yè)則是多個(gè)轉(zhuǎn)換、作業(yè)的集合,在作業(yè)中可以對轉(zhuǎn)換或作業(yè)進(jìn)行調(diào)度、定時(shí)任務(wù)等。

在實(shí)際過程中,寫的流程不能很復(fù)雜,當(dāng)數(shù)據(jù)抽取需要多步驟時(shí),需要分成多個(gè)轉(zhuǎn)換,在集成到一個(gè)作業(yè)里順序擺放,然后執(zhí)行即可。

目錄文件功能說明

圖片
來源網(wǎng)絡(luò)
圖片
來源網(wǎng)絡(luò)
圖片
來源網(wǎng)絡(luò)
下載及安裝

官網(wǎng)各個(gè)版本下載地址:https://sourceforge.net/projects/pentaho/files/Data%20Integration/
國內(nèi) Kettle 論壇網(wǎng):https://www.kettle.net.cn/

Kettle 是純 Java 編程的開源軟件,需要安裝 JDK,并配置環(huán)境變量,解壓后直接使用無需安裝。

需準(zhǔn)備的其他東西:數(shù)據(jù)庫驅(qū)動(dòng),如將驅(qū)動(dòng)放在 Kettle 根目錄的 bin 文件夾下面即可。

打開 Kettle 只需要運(yùn)行 Spoon.bat (win)/ spoon.sh (Linux / macOS),即可打開 Spoon 圖形工具。

啟動(dòng) Kettle

如下圖,執(zhí)行  ./spoon.sh 命令

圖片
image-20210705214148018

歡迎頁面

圖片
首頁
HelloWorld

需求:把數(shù)據(jù)從 CSV 文件復(fù)制到 Excel 文件

圖片
CSV 文件到 Excel 文件

CSV 文件輸入

圖片
CSV 輸入控件

將 「CSV 文件輸入」拖拽到右側(cè)的工作區(qū),雙擊進(jìn)行編輯,瀏覽選擇準(zhǔn)備好的測試文件,點(diǎn)擊「獲取字段」自動(dòng)獲取 CSV 文件中表頭信息,輸入配置完成,下一步進(jìn)行輸出配置。

圖片
編輯 CSV 文件輸入

Excel 輸出

圖片
Excel 輸出

將 「Excel 輸出」拖拽到右側(cè)的工作區(qū),雙擊進(jìn)行編輯,這步比較簡單,瀏覽選擇輸出目錄和設(shè)置文件名,完成配置。

圖片
輸出配置

轉(zhuǎn)換文件

按住 shift + 鼠標(biāo)左鍵可以建立連接,保存轉(zhuǎn)換配置

圖片
連接

運(yùn)行轉(zhuǎn)換

圖片
運(yùn)行結(jié)果

查看結(jié)果

圖片
運(yùn)行結(jié)果


總結(jié)

初步了解 Kettle 核心組件及其使用

  • 作業(yè)和轉(zhuǎn)換可以在圖形界面里執(zhí)行,但這只適合在開發(fā)、測試和調(diào)試階段。在開發(fā)完成后,需要部署到生產(chǎn)環(huán)境中  Spoon 就很少用到了,Kitchen 和 Pan 命令行工具用于實(shí)際的生產(chǎn)環(huán)境。
  • 部署生產(chǎn)階段一般需要通過命令行執(zhí)行,需要把命令行放到 Shell 腳本中,并定時(shí)調(diào)度這個(gè)腳本。
  • Kitchen 和 Pan 工具是 Kettle 的命令行執(zhí)行程序,只是在 Kettle 執(zhí)行引擎上的封裝,它們只是解釋命令行參數(shù),調(diào)用并把這些參數(shù)傳遞給 Kettle 引擎。
  • Kitchen 和 Pan 在概念和用法上都非常相近,這兩個(gè)命令的參數(shù)也基本是一樣的。唯一不同的是 Kitchen 用于執(zhí)行作業(yè),Pan 用于執(zhí)行轉(zhuǎn)換。

分步操作一個(gè) HelloWrold 過程

圖片


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多