最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

kettle在windows上安裝配置與實(shí)踐案例

 更新時(shí)間:2022年11月09日 10:00:34   作者:AllenGd  
Kettle是一款開源的ETL工具,純java編寫,可以在Window、Linux、Unix上運(yùn)行,綠色無(wú)需安裝,數(shù)據(jù)抽取高效穩(wěn)定,這篇文章主要介紹了kettle在windows上安裝配置與實(shí)踐案例,需要的朋友可以參考下

第1章 kettle概述

1.1 什么是kettle

Kettle是一款開源的ETL工具,純java編寫,可以在Window、Linux、Unix上運(yùn)行,綠色無(wú)需安裝,數(shù)據(jù)抽取高效穩(wěn)定。

1.2 Kettle核心知識(shí)點(diǎn)

1.2.1 Kettle工程存儲(chǔ)方式

1) 以XML形式存儲(chǔ)

2) 以資源庫(kù)方式存儲(chǔ)(數(shù)據(jù)庫(kù)資源庫(kù)和文件資源庫(kù))

1.2.2 Kettle的兩種設(shè)計(jì)

簡(jiǎn)述:Transformation(轉(zhuǎn)換):完成針對(duì)數(shù)據(jù)的基礎(chǔ)轉(zhuǎn)換。

      Job(作業(yè)):完成整個(gè)工作流的控制。

區(qū)別:(1)作業(yè)是步驟流,轉(zhuǎn)換是數(shù)據(jù)流,這是作業(yè)和轉(zhuǎn)換的最大區(qū)別

           (2)作業(yè)的每一個(gè)步驟,必須等到前面的步驟都跑完了,后面的步驟才會(huì)執(zhí)行;而轉(zhuǎn)換會(huì)一次性把所有控件全部先啟動(dòng)(一個(gè)空間對(duì)應(yīng)啟動(dòng)一個(gè)線程),然后數(shù)據(jù)流會(huì)從第一個(gè)控件開始,一條記錄,一條記錄地流向最后的控件。

1.2.3 Kettle的組成

  • 勺子(spoon.bat/spoon.sh):是一個(gè)圖形化的界面,可以讓我們用圖形化的方式開發(fā)轉(zhuǎn)換和作業(yè)。Windows選擇spoon.bat;Linux選擇spoon.sh
  • 煎鍋(pan.bat/pan.sh):利用pan可以用命令行的形式調(diào)用Trans
  • 廚房(kitchen.bat/kitchen.sh):利用kitchen可以使用命令調(diào)用Job
  • 菜單(carte.bat/carte.sh):carte是一個(gè)輕量級(jí)的web容器,用于建立專用、遠(yuǎn)程的ETL Server

1.3 kettle特點(diǎn)

免費(fèi)開源:基于Java的免費(fèi)開源的軟件,對(duì)商業(yè)用戶也沒(méi)有限制

易配置:可以在window、Linux、unix上運(yùn)行,綠色無(wú)需安裝,數(shù)據(jù)抽取高效穩(wěn)定

不同數(shù)據(jù)庫(kù):ETL工具集,它允許你管理來(lái)自不同數(shù)據(jù)庫(kù)的數(shù)據(jù)

兩種腳本文件:transformation和job,transformation完成針對(duì)數(shù)據(jù)的基礎(chǔ)轉(zhuǎn)換,job則完成整個(gè)工作流的控制

圖形化界面設(shè)計(jì):通過(guò)圖形化設(shè)計(jì)實(shí)現(xiàn)做什么業(yè)務(wù),無(wú)需寫代碼去實(shí)現(xiàn)

定時(shí)功能:在job下的start模塊,有一個(gè)定時(shí)功能,可以每日、每周等方式進(jìn)行定時(shí)。

第2章 kettle安裝部署和使用

2.1 kettle安裝地址

官網(wǎng)地址

Home - Hitachi Vantara

下載地址

https://sourceforge.net/projects/pentaho/files/Data%20Integration/

kettle各版本國(guó)內(nèi)鏡像下載地址:http://mirror.bit.edu.cn/pentaho/(下載速度相對(duì)快一些)

2.2 Windows下安裝使用

2.2.1 概述

在實(shí)際企業(yè)開發(fā)中,都是在本地環(huán)境下進(jìn)行kettle的job和Transformation開發(fā)的,可以在本地運(yùn)行,也可以連接遠(yuǎn)程機(jī)器運(yùn)行

2.2.2 安裝

1) 安裝jdk

2) 下載kettle壓縮包,因kettle為綠色軟件,解壓縮到任意本地路徑即可

3) 雙擊Spoon.bat,啟動(dòng)圖形化界面工具,就可以直接使用了

2.2.3 案例

1) 案例一 把stu1的數(shù)據(jù)按id同步到stu2,stu2有相同id則更新數(shù)據(jù)

(1)在mysql中創(chuàng)建兩張表

mysql> create database kettle;
mysql> use kettle;
mysql> create table stu1(id int,name varchar(20),age int);
mysql> create table stu2(id int,name varchar(20));

(2)往兩張表中插入一些數(shù)據(jù)

mysql> insert into stu1 values(1001,'zhangsan',20),(1002,'lisi',18), (1003,'wangwu',23);
mysql> insert into stu2 values(1001,'wukong');??

 (3)在kettle中新建轉(zhuǎn)換

(4)分別在輸入和輸出中拉出表輸入和插入/更新

(5)雙擊表輸入對(duì)象,填寫相關(guān)配置,測(cè)試是否成功

(6)雙擊 更新/插入對(duì)象,填寫相關(guān)配置

編輯映射,添加需要的字段,因?yàn)楸韘tu2中沒(méi)有age,所以不需要Add

(7)保存轉(zhuǎn)換,啟動(dòng)運(yùn)行,去mysql表查看結(jié)果

注意:如果需要連接mysql數(shù)據(jù)庫(kù),需要要先將mysql的連接驅(qū)動(dòng)包復(fù)制到kettle的根目錄下的lib目錄中,否則會(huì)報(bào)錯(cuò)找不到驅(qū)動(dòng)。

2) 案例2:使用作業(yè)執(zhí)行上述轉(zhuǎn)換,并且額外在表stu2中添加一條數(shù)據(jù)

(1)新建一個(gè)作業(yè)

(2) 按圖示拉取組件

(3)雙擊Start編輯Start

(4)雙擊轉(zhuǎn)換,選擇案例1保存的文件

(5)雙擊SQL,編輯SQL語(yǔ)句

(6)保存執(zhí)行

運(yùn)行之前,查看數(shù)據(jù):

運(yùn)行之后查看結(jié)果:會(huì)發(fā)現(xiàn)除了剛才我們寫的,insert語(yǔ)句之外,stu1表中的id為1004的也插入到stu2中了,因?yàn)槲覀儓?zhí)行了stu1tostu2.ktr轉(zhuǎn)換。

注:轉(zhuǎn)換和作業(yè)的后綴不同

3)案例3:將hive表的數(shù)據(jù)輸出到hdfs

(1)因?yàn)樯婕暗絟ive和hbase的讀寫,需要修改相關(guān)配置文件。

修改解壓目錄下的data-integration\plugins\pentaho-big-data-plugin下的plugin.properties,設(shè)置active.hadoop.configuration=hdp26,并將如下配置文件從集群上拷貝到data-integration\plugins\pentaho-big-data-plugin\hadoop-configurations\hdp26下

注意:以上操作完,需要重啟kettle才能生效

(2)啟動(dòng)hdfs,yarn,zookeeper,hbase集群的所有進(jìn)程,啟動(dòng)hiveserver2服務(wù)

[root@node4 hadoop-2.6.4]# sbin/start-dfs.sh

[root@node4 hadoop-2.6.4]# sbin/start-yarn.sh

三臺(tái)服務(wù)器分別開啟HBase前啟動(dòng)Zookeeper

[root@node4 hadoop-2.6.4]# zkServer.sh start

[root@node5 hadoop-2.6.4]# zkServer.sh start

[root@node6 hadoop-2.6.4]# zkServer.sh start

開啟hbase

[root@node4 hbase-1.2.3]# bin/start-hbase.sh

開啟hive2

[root@node4 ~]# hiveserver2

(3)進(jìn)入beeline,查看10000端口開啟情況

[root@node4 ~]# beeline(回車)

Beeline version 2.1.0 by Apache Hive

beeline> !connect jdbc:hive2://node4:10000

Connecting to jdbc:hive2://node4:10000

Enter username for jdbc:hive2://node4:10000: root(輸入用戶名,回車)

Enter password for jdbc:hive2://node4:10000: ******(輸入密碼,回車)

SLF4J: Class path contains multiple SLF4J bindings.

SLF4J: Found binding in [jar:file:/opt/module/hive/apache-hive-2.1.0-bin/lib/hive-jdbc-2.1.0-standalone.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: Found binding in [jar:file:/opt/module/hadoop/hadoop-2.6.4/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.

SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]

Connected to: Apache Hive (version 2.1.0)

Driver: Hive JDBC (version 2.1.0)

20/05/23 20:05:58 [main]: WARN jdbc.HiveConnection: Request to set autoCommit to false; Hive does not support autoCommit=false.

Transaction isolation: TRANSACTION_REPEATABLE_READ

0: jdbc:hive2://node4:10000>(到了這里說(shuō)明成功開啟10000端口)

(4)創(chuàng)建兩張表dept和emp

CREATE TABLE dept(deptno int, dname string,loc string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t';

CREATE TABLE emp(

empno int,

ename string,

job string,

mgr int,

hiredate string,

sal double,

comm int,

deptno int)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY '\t';

(5)插入數(shù)據(jù)

insert into dept values(10,'accounting','NEW YORK'),(20,'RESEARCH','DALLAS'),(30,'SALES','CHICAGO'),(40,'OPERATIONS','BOSTON');

insert into emp values

(7369,'SMITH','CLERK',7902,'1980-12-17',800,NULL,20),

(7499,'ALLEN','SALESMAN',7698,'1980-12-17',1600,300,30),

(7521,'WARD','SALESMAN',7698,'1980-12-17',1250,500,30),

(7566,'JONES','MANAGER',7839,'1980-12-17',2975,NULL,20);

(6)按下圖建立流程圖

(7)設(shè)置表輸入,連接hive

表輸入1

表輸入2

(8)設(shè)置排序?qū)傩?/p>

(9)設(shè)置連接屬性

(10)設(shè)置字段選擇

“選擇和修改”、“元數(shù)據(jù)”什么都不操作即可,只操作“移除”。如果操作了“元數(shù)據(jù)”,那么要注意和“移除”比較一下,字段是否一致,不然會(huì)報(bào)錯(cuò)。

(11)設(shè)置文件輸出

跟前端頁(yè)面一致

(12)保存并運(yùn)行查看hdfs

我們下載下來(lái)看一下:

4)案例4:讀取hdfs文件并將sal大于1000的數(shù)據(jù)保存到hbase中

(1) 在HBase中創(chuàng)建一張表用于存放數(shù)據(jù)

[root@node4 ~]# hbase shell

hbase(main):002:0> create 'people','info'

(2)按下圖建立流程圖

(3)設(shè)置文件輸入,連接hdfs

(4)設(shè)置過(guò)濾記錄

(5)設(shè)置HBase output

注意:若報(bào)錯(cuò)沒(méi)有權(quán)限往hdfs寫文件,在Spoon.bat中第119行添加參數(shù)

"-DHADOOP_USER_NAME=node4" "-Dfile.encoding=UTF-8"

(6) 保持并運(yùn)行,查看hbase

2.3 創(chuàng)建資源庫(kù)

2.3.1 數(shù)據(jù)庫(kù)資源庫(kù)

數(shù)據(jù)庫(kù)資源庫(kù)是將作業(yè)和轉(zhuǎn)換相關(guān)的信息存儲(chǔ)在數(shù)據(jù)庫(kù)中,執(zhí)行的時(shí)候直接去數(shù)據(jù)庫(kù)讀取信息,很容易跨平臺(tái)使用

1)點(diǎn)擊右上角connect,選擇Other Resporitory

2) 選擇Database Repository

3) 建立新連接

4) 填好之后,點(diǎn)擊finish,會(huì)在指定的庫(kù)中創(chuàng)建很多表,至此數(shù)據(jù)庫(kù)資源庫(kù)創(chuàng)建完成

5) 連接資源庫(kù)

默認(rèn)賬號(hào)密碼為admin

6) 將之前做過(guò)的轉(zhuǎn)換導(dǎo)入資源庫(kù)

(1)選擇從xml文件導(dǎo)入

(2)隨便選擇一個(gè)轉(zhuǎn)換

(3)點(diǎn)擊保存,選擇存儲(chǔ)位置及文件名

(4)打開資源庫(kù)查看保存結(jié)果

2.3.2 文件資源庫(kù)

將作業(yè)和轉(zhuǎn)換相關(guān)的信息存儲(chǔ)在指定的目錄中,其實(shí)和XML的方式一樣

創(chuàng)建方式跟創(chuàng)建數(shù)據(jù)庫(kù)資源庫(kù)步驟類似,只是不需要用戶密碼就可以訪問(wèn),跨

平臺(tái)使用比較麻煩

1)選擇connect

2)點(diǎn)擊add后點(diǎn)擊Other Repositories

3)選擇File Repository

4)填寫信息

到此這篇關(guān)于kettle在windows上安裝配置與實(shí)踐案例的文章就介紹到這了,更多相關(guān)kettle在windows安裝內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spark在Windows下的環(huán)境搭建方法

    Spark在Windows下的環(huán)境搭建方法

    這篇文章主要介紹了Spark在Windows下的環(huán)境搭建方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Selenium IDE安裝及使用

    Selenium IDE安裝及使用

    本文主要介紹了Selenium IDE安裝及使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 萬(wàn)萬(wàn)沒(méi)想到Chrome的歷史記錄竟然可以這么玩

    萬(wàn)萬(wàn)沒(méi)想到Chrome的歷史記錄竟然可以這么玩

    最近遇到一個(gè)棘手的問(wèn)題,需要查找含有某個(gè)關(guān)鍵字的網(wǎng)頁(yè),但是通過(guò)chrome原生的歷史記錄查出來(lái)的,查到的結(jié)果并不滿意,今天小編就給大家分享一篇教程幫助大家解決Chrome歷史記錄的問(wèn)題,感興趣的朋友一起看看吧
    2020-10-10
  • 程序猿表白妹子的代碼神器

    程序猿表白妹子的代碼神器

    女生眼中的程序員,身上帶著好多標(biāo)簽“直男,宅,不懂浪漫,枯燥…”,但這是因?yàn)槟氵€沒(méi)有了解程序猿,程序猿也可以非常浪漫。程序猿用代碼來(lái)表白,把你中意的代碼發(fā)給她,看她能不能看懂
    2023-01-01
  • centos搭建code-server配置HTTPS登錄頁(yè)自定義實(shí)現(xiàn)步驟

    centos搭建code-server配置HTTPS登錄頁(yè)自定義實(shí)現(xiàn)步驟

    這篇文章主要為大家介紹了centos搭建code-server及配置HTTPS、登錄頁(yè)自定義實(shí)現(xiàn)步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • arcgis?pro?3.0.2?安裝及?geemap安裝過(guò)程

    arcgis?pro?3.0.2?安裝及?geemap安裝過(guò)程

    ArcGIS?Pro是一個(gè)專業(yè)的桌面GIS應(yīng)用程序,可以探索,可視化,分析和管理二維和三維數(shù)據(jù),這篇文章主要介紹了arcgis?pro?3.0.2安裝及geemap,需要的朋友可以參考下
    2023-08-08
  • 如何將服務(wù)器上的python代碼通過(guò)QQ發(fā)送回傳信息(附實(shí)現(xiàn)方法)

    如何將服務(wù)器上的python代碼通過(guò)QQ發(fā)送回傳信息(附實(shí)現(xiàn)方法)

    這篇文章主要介紹了我將服務(wù)器上的python代碼通過(guò)QQ發(fā)送回傳信息(附實(shí)現(xiàn)方法),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • 網(wǎng)址URL的大小寫敏感嗎,有什么區(qū)別?

    網(wǎng)址URL的大小寫敏感嗎,有什么區(qū)別?

    在?Web?開發(fā)中,網(wǎng)址URL?的大小寫問(wèn)題可能引發(fā)意想不到的行為,本文將從技術(shù)規(guī)范、服務(wù)器配置、瀏覽器行為等多個(gè)維度,系統(tǒng)解析?URL?各組件的大小寫敏感性,并提供實(shí)踐建議,可有效避免因?URL?大小寫不一致引發(fā)的搜索引擎優(yōu)化問(wèn)題、鏈接失效及用戶體驗(yàn)下降
    2025-04-04
  • SolidWorks?2022?安裝教程圖文詳解(含安裝包)

    SolidWorks?2022?安裝教程圖文詳解(含安裝包)

    本文詳細(xì)介紹了SolidWorks2022軟件的下載與安裝步驟,包括如何通過(guò)百度網(wǎng)盤獲取安裝包,修改注冊(cè)表,啟動(dòng)服務(wù),解壓安裝包,斷開互聯(lián)網(wǎng)連接以及軟件的安裝過(guò)程,介紹了從準(zhǔn)備安裝文件到軟件啟動(dòng)的全過(guò)程,確保用戶能夠順利完成SolidWorks2022的安裝并啟用
    2024-11-11
  • git基礎(chǔ)之各版本控制系統(tǒng)介紹

    git基礎(chǔ)之各版本控制系統(tǒng)介紹

    這篇文章主要為大家介紹了git基礎(chǔ)之各版本控制系統(tǒng)以及版本的演變,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-04-04

最新評(píng)論

什邡市| 视频| 南江县| 蒙阴县| 九寨沟县| 昌邑市| 紫金县| 满洲里市| 密山市| 大宁县| 九台市| 元氏县| 隆德县| 峨边| 南投市| 秦皇岛市| 买车| 青岛市| 柳林县| 长沙市| 广东省| 罗山县| 西安市| 天水市| 湾仔区| 高青县| 乡城县| 南投市| 太仓市| 崇信县| 邯郸市| 定远县| 进贤县| 封开县| 博客| 吕梁市| 潢川县| 巨鹿县| 连南| 青神县| 江津市|