日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

在使用Kettle的集群排序中 Carte的设定——(基于Windows)

發(fā)布時間:2024/1/3 综合教程 29 生活家
生活随笔 收集整理的這篇文章主要介紹了 在使用Kettle的集群排序中 Carte的设定——(基于Windows) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在使用Kettle的集群排序中 Carte的設(shè)定——(基于Windows)

本片文章主要是關(guān)于使用Kettle的UI界面:

Spoon來實現(xiàn)基于集群的對數(shù)據(jù)庫中的數(shù)據(jù)表數(shù)據(jù)進(jìn)行排序的試驗。

以及在實驗過程中所要開啟的Carte服務(wù)的一些配置文件的設(shè)置,

還有基于Windows cmd 的相關(guān)Carte命令。

文章主要分為六個部分:

1.介紹carte  

2.carte相關(guān)配置文件的設(shè)定

3.carte服務(wù)的開啟命令

4.在kettle的圖形界面中對集群進(jìn)行相關(guān)的設(shè)定  

5.使用kettle集群模式對相關(guān)的數(shù)據(jù)進(jìn)行排序

6.有關(guān)于集群調(diào)用子服務(wù)器的java源代碼調(diào)用實現(xiàn)

1.介紹carte

carte是由kettle所提供的web server的程序,
carte也被叫做子服務(wù)器(slave) 在kettle調(diào)用集群(cluster)來進(jìn)行分布式分發(fā)、處理任務(wù)的時候,

可以開啟多個carte服務(wù)進(jìn)程 來進(jìn)行分發(fā)ETL(master)任務(wù)和接收,運行,提交ETL任務(wù)(slave)。

就像是《pentaho kettle solutions》中對Carte的定義:

"Carte a lightweight server process allows for remote monitoring and enables the transformation clustering capabilities ".

"Carte是一個輕量級的服務(wù)器進(jìn)程,可以遠(yuǎn)程監(jiān)控和開啟轉(zhuǎn)換集群的能力".

2.carte相關(guān)配置文件的設(shè)定

與hadoop的結(jié)點設(shè)置類似,本實驗將要實現(xiàn)的是基于一臺主機,

開啟四個carte服務(wù),其中一臺為Master另外三臺為Slave,

來實現(xiàn)在Kettle的Spoon中對數(shù)據(jù)庫中數(shù)據(jù)表讀取后 以集群的方式來執(zhí)行排序的過程。

開啟的carte服務(wù)所顯示的命令窗口都是一樣的,但是究竟哪一個是主服務(wù)哪些又是子服務(wù)呢?

對于集群中的主服務(wù)器還是子服務(wù)器的設(shè)定,

我們?nèi)耘f引用《pentaho kettle solutions》書中的一段話進(jìn)行說明(因為很權(quán)威的):

"A cluster schema consists of one master server that is being used as a controller

for the cluster , and a number of non-master slave servers. In short, we refer to

the controlling Carte server as the master and the other Carte servers as slaves"

LZ在不考慮到句式主 謂 賓 定 狀 補的條件下,對上述介紹的理解是這樣的。

"一個集群實體是由 一個 用來主控整個集群的主節(jié)點

和多個 不是主節(jié)點

(也就是主節(jié)點除外,即配置文件中 屬性<master>N</master>對應(yīng)的值置為N的對應(yīng)結(jié)點)

的子服務(wù)器所構(gòu)成的。

簡而言之,我們把開啟的主控Carte 服務(wù)器 叫做 主節(jié)點 而其他的Carte 服務(wù)器叫做 從結(jié)點"。

關(guān)于Carte的服務(wù)器是主還是從是由相關(guān)的配置文件:carte-config.xml中的

屬性<master></master>中是"Y"還是"N" 所設(shè)定的,

其實這個和hadoop通過相關(guān)的XML配置文件來設(shè)定是主節(jié)點還是從節(jié)點是很神似的。

配置文件吧,其實根據(jù)計算機不同,以及計算機中的環(huán)境變量的不同而千差萬別。

主要說一下LZ關(guān)于配置文件的設(shè)定過程吧,

若想讓Carte程序可以成功運行的話,首先就應(yīng)該設(shè)定它的配置文件,

配置文件所在的路徑,如下圖所示:

(carte-config.xml 截圖)

在這里L(fēng)Z在正常進(jìn)行配置的時候cmd窗口報錯,說是在kokia/Acer/user/acer/

的下面找不到pwd文件夾(kokia是LZ的計算機名稱)

所以LZ根據(jù)提示將kettle安裝解壓路徑下的pwd文件夾復(fù)制了一份到提示信息的路徑下,

才使得Carte正常運行,不過要讓LZ說是什么原理嘛,其實LZ也不知道的,

或許默認(rèn)Carte服務(wù)啟動的時候會到該路徑下自行尋找相關(guān)的配置文件吧......

pwd這個文件夾下面默認(rèn)存放的是關(guān)于Carte的一些配置文件以及登陸用戶名以及密碼等等,

它所在的kettle安裝包的路徑就是./data-integration/pwd 這個下面的。

下面是關(guān)于主服務(wù)器(master:carte-config-master-8080.xml)配置文件進(jìn)行相關(guān)注釋說明:

<slave_config>

<slaveserver>
<name>master1</name>
<hostname>localhost</hostname>
<port>8080</port>
<master>Y</master>
</slaveserver>


</slave_config>

<!--
even though called master node  ,

it is a instance of the  slaveserver

<name> attribute is used to define the name of the slaveserver
<hostname> in this conf file is the localhost which equal
to the "127.0.0.1" IP address

當(dāng)然,對于這個hostname的話,在Linux的環(huán)境中,

在對應(yīng)的配置文件中 有相關(guān)的IP地址與主機名稱相對應(yīng)的,

在Windows下面,LZ并不知道相關(guān)的配置文件在哪里,

所以如果是集群的節(jié)點所在的并不是基于一臺主機的話,
<hostname>這個屬性的值可以使用該節(jié)點所在的主機IP地址所代替。 <port> 8080 , in carte the port of 8080 is regarded as the port of the master node in default <master> : Y which talked about above , attribute value = Y means that the current slaveserver is regarded as the master node in the cluster. -->

下面是關(guān)于子服務(wù)器(slave)的配置文件進(jìn)行相關(guān)注釋說明:

<slave_config>

<masters>

<slaveserver>

<name>master1</name>
<hostname>localhost</hostname>
<port>8080</port>
<username>cluster</username>
<password>cluster</password>
<master>Y</master>
</slaveserver>

</masters>


<report_to_masters>Y</report_to_masters>

<slaveserver>
<name>slave1-8081</name>
<hostname>localhost</hostname>
<port>8081</port>
<username>cluster</username>
<password>cluster</password>
<master>N</master>
</slaveserver>

</slave_config>

從節(jié)點的配置文件照比主節(jié)點的配置文件要稍微多一些內(nèi)容的,

首先,多的是<masters>這個屬性,其中包含的是關(guān)于一個<slaveserver>實體的設(shè)定,

其實也就是相應(yīng)的在其中引入了主節(jié)點的相關(guān)設(shè)定的屬性值。

然后有一個屬性是<report_to_masters>這個屬性是用來設(shè)定:

slave1-8081這個節(jié)點已經(jīng)是主節(jié)點的子節(jié)點了,但是是否向主節(jié)點提交信息還是不知道的,

所以要通過這個屬性對其進(jìn)行相關(guān)的設(shè)定。

接下來就是對從節(jié)點進(jìn)行相關(guān)的設(shè)定,關(guān)于IP地址,端口號,節(jié)點名稱,登錄用戶名以及密碼,

又因為該節(jié)點是子節(jié)點,所以<master>這個屬性值對應(yīng)的是"N".

需要注意的是,如果是在開啟carte或是Spoon的時候進(jìn)行相關(guān)的配置文件 進(jìn)行設(shè)定的話呢,

需要退出程序之后再次進(jìn)入才能是相關(guān)的配置文件生效。

3.carte服務(wù)的開啟命令

Carte有著針對不同系統(tǒng)可以正常運行的不同腳本文件,

對于Windows有著:Carte.bat

對于Linux有著:carte.sh

本文主要討論的是基于Windows的運行。

首先,打開cmd控制臺窗口:

然后(LZ的cmd 運行有一些問題,因為LZ的計算機是64bit的,

所以需要右鍵單擊cmd:選擇這個"以管理員的身份運行"這個選項,

才能保證carte的正確運行,不然權(quán)限不夠啟動會出錯的)

Windows下,運行Carte:

./Carte.bat IP address port

如截圖所示:master node是8080端口,下面開啟master node:

如下圖所示,代表的是本地的主節(jié)點(port=8080)Carte服務(wù)已經(jīng)被成功開啟了,

4.在kettle的圖形界面中對集群進(jìn)行相關(guān)的設(shè)定

首先,應(yīng)該開啟Spoon程序,進(jìn)入到圖形界面中后,創(chuàng)建一個轉(zhuǎn)換,

然后選擇左邊選項樹的的左選項:主對象樹,

然后找到子服務(wù)器右擊選擇新建,如下圖所示配置好主節(jié)點。

需要注意的是:

1.服務(wù)器的名稱一定要與pwd文件夾下面的配置文件<name>屬性所對應(yīng)的值是一致的

2.所新建的子服務(wù)器一定要在pwd文件夾下面要有對應(yīng)的配置文件才可以,

否則即便在Spoon中進(jìn)行相關(guān)的設(shè)定也不會在集群中作為一個節(jié)點所運行的。

因為配置文件決定的是Carte服務(wù)的啟動運行,而Spoon中需要調(diào)用到Carte服務(wù)。

如果一開始配置文件中沒有該節(jié)點的話,就無法啟動Carte服務(wù),

在Spoon中也就無法調(diào)用該Carte作為子服務(wù)器,更不用說是將該子服務(wù)器作為集群中的節(jié)點了。

當(dāng)然LZ也試著在Spoon界面中創(chuàng)建相關(guān)的子服務(wù)器,然后存盤該.ktr文件,

然后到相應(yīng)的pwd文件夾下面尋找是否有相關(guān)的配置文件生成,但沒有找到。

所以今后在Spoon中設(shè)定配置子服務(wù)器的時候,一定要先配置好Carte的配置文件才好。

下面的截圖是,將要作為集群的一個子節(jié)點在pwd文件夾下的配置文件信息:

可以看到的是,對應(yīng)的<name>屬性的值是:slave1-8081

所以在Spoon中設(shè)定子服務(wù)器作為子節(jié)點的時候,

最好是要保證二者(Spoon中的子服務(wù)器設(shè)定和配置文件)的一致性才好:

接下來的其余子節(jié)點就不進(jìn)行一一演示了。

在"是主服務(wù)器嗎?"這個選項中,因為它不是主服務(wù)器,所以不對其進(jìn)行勾選。

接下來將各個子服務(wù)器導(dǎo)入到集群中去,

選擇左對象樹,然后右鍵單擊:Kettle集群schemas->新建。

接下來選中相關(guān)的子服務(wù)器:

選中所有的要加入到cluster中的子服務(wù)器之后,點擊確定。

接下來就可以在集群schema對話框中看到相應(yīng)的選中的服務(wù)器了,如下圖所示:

感覺這篇文章的內(nèi)容有一點多了呢,估計后面的兩個主題也會涉及到很多的東西呢,

所以5、6這 兩個主題就留到接下來的一篇文章中來介紹吧~

5.使用kettle集群模式對相關(guān)的數(shù)據(jù)進(jìn)行排序

6.有關(guān)于集群調(diào)用子服務(wù)器的java源代碼實現(xiàn)


分類:Kettle

總結(jié)

以上是生活随笔為你收集整理的在使用Kettle的集群排序中 Carte的设定——(基于Windows)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。