天天看點

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

1 引言:

項目最近要引入大資料技術,使用其處理加工日上網話單資料,需要kettle把源系統的文本資料load到hadoop環境中

2 準備工作:

1 首先

要了解支援hadoop的Kettle版本情況,由于kettle資料網上較少,是以最好去官網找,官網的url:

http://wiki.pentaho.com/display/BAD/Configuring+Pentaho+for+your+Hadoop+Distro+and+Version

打開這個url 到頁面最下面的底端,如下圖:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

archive 下面的from PDI 4.3 、 from PDI 4.4 、 from PDI 5.0 即表示支援hadoop的pdi 版本。pdi即pentaho data integration 又稱kettle。PDI 4.3 、  PDI 4.4 、 PDI 5.0 即是kettle 4.3 、4.4、 5.0 ,這個版本号 包括比其更高的版本(即kettle 5.0.X ,5.1,5.2也支援hadoop)。

2 其次

不同的kettle版本支援的hadoop版本不一樣,以5.1為例子,下面的連結是5.1的支援情況

http://wiki.pentaho.com/display/BAD/Configuring+Pentaho+for+your+Hadoop+Distro+and+Version

 下圖為連結打開的頁面的中間部分:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

determine the proper shim for hadoop Distro and version 大概意思是 為hadoop版本選擇合适的套件。表格上面的一行:apache、cloudera、hortonworks、intel、mapr指的是發行方。點選他們來選擇你 想連接配接的hadoop的發行方 。上圖 以apache hadoop為例:

Version 指版hadoop版本号 ,shim 指kettle提供給該hadoop套件的名稱,Download 裡面的 included in 5.0,5.1 指kettle的5.0、5.1版本安裝包裡面已經有内置的插件,一句話來講 就是kettle5.1及5.0版本已有插件提供支援apache hadoop版本0.20.x  。不需要額外下載下傳。NS 是不支援的意思 圖檔下面也有解釋。

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

上圖說明的是對 cloudera的 hadoop支援的情況 ,Download 裡面 download的藍色字型超連結的說明 是要除了下kettle的安裝包外另外下載下傳的 ,帶 included in 5.0,5.1 說明 kettle 5.0,5.1版本的本身就支援(内置有插件)。

由上面兩圖得到的結論是 kettle 5.1 支援 apache hadoop 0.20.x版本 及cloudera hadoop CDH4.0 到CDH5。

3  試驗運作:

1 首先配置工作

目前我用的hadoop 版本是hadoop-2.2.0-cdh5.0 是以用kettle 5.1 且其内置有hadoop插件。去kettle官網下載下傳:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

解壓之後 就是:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

下載下傳好之後,現在就需要做配置的工作了,配置的工作在kettle安裝檔案裡面做:

配置辦法參考:http://wiki.pentaho.com/display/BAD/Hadoop

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

進頁面之後 先點選collapse 收縮所有的菜單樹 如上圖。  Configuring Pentaho for your Hadoop Distro and Version 意思是為hadoop 版本做配置 點選進去:頁面的上面 就是上面說過的kettle對hadoop的支援情況。

我們到頁面的中間部分去,如下圖:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

1 意思是 你想要連接配接的hadoop發行版 已經被kettle支援了,但是沒有内置插件,需要下載下傳,這種情況最好 看下:Install Hadoop Distribution Shim

2 意思是你想連接配接的hadoop發行版 還有沒有被kettle支援,可以自己填寫相應的資訊 要求pentaho 開發一個。

還有1種情況 就是上面說的hadoop發行版 已經被kettle支援了 且有内置的插件。

3 就是配置了。

 3.1 stop application 就是如果kettle在運作 先停掉他。

 3.2 打開安裝檔案夾 我們這邊是kettle 是以就是spoon那個的檔案路徑:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

 3.3 編輯 plugin.properties檔案

 3.4 改一個配置值 下圖畫圈的地方

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

 改成 對應你hadoop的shim值 (上圖的表格裡面的shim) 我這邊是cdh50:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

 改之後儲存:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

至此 配置工作做完。

2 然後開發腳本工作

下面開始開發腳本 官方參考:http://wiki.pentaho.com/display/BAD/Loading+Data+into+HDFS

打開 kettle 運作spoon.bat

:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

建立一個kjb檔案 拖一個開始圖元

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

再拖一個

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

hadoop copy files即是 load資料到 hdfs裡面。

copy files裡面的配置:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:
kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

 意思是目前kjb腳本所在路徑 在我這邊檔案夾是:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

目标檔案 是 hdfs://ip:hdfs端口/路徑

填之前可以點選

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

browse 按鈕 測試

如下圖 :填好server 和port後  點選connect 如果沒有報錯 出現紅框裡面的hdfs://......... 就說明連接配接成功了(如下圖)。

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

注意隻要連接配接成功,說明kettle對hadoop的配置就沒有問題。

可以運作腳本試試了:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

如上圖,腳本運作成功。

在hadoop home bin下面檢視:

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

檔案成功load.

至此,kettle load文本資料到hdfs成功!

4 備注:

所有的步驟都可以參考官網:

http://wiki.pentaho.com/display/BAD/Hadoop

kettle入門(三) 之kettle連接配接hadoop&hdfs圖文詳解1 引言:2 準備工作:3  試驗運作: 4 備注:

上圖 1 是配置 2 是加載資料到hadoop 叢集 3 是加載資料到hdfs 還有其他到 hive 到hbase等。

ps:寫一段長的部落格真累,感覺比幹活還累

繼續閱讀