设为首页 加入收藏

TOP

kettle初探
2015-07-24 10:27:22 来源: 作者: 【 】 浏览:1
Tags:kettle 初探
Kettle是Pentaho的一个组件,主要用于 数据库间的数据迁移,到我用过的4.2版,还不支持noSQL,不知道4.4是不是支持了。

Kettle自己有三个主要组件:Spoon,Kitchen,Pan。其中Spoon是一个图形化的界面,用于windows的时候,先设置环境变量:pentaho_java_home,例如:C:\Program Files\Java\jdk1.7.0_25,其实就是你的java安装目录,1.6以上即可。windows下双击Spoon.bat就可以了,界面如下:

\

这里我建立了资源库,其实可以用文件形式存储,存储的结构都是xml,但是我还是觉得建立一个资源库比较好,以后看job等情况也比较简单,因为数据表的可读性比xml要好得多。建立资源库和文件资源库只需要把右上角的小加号点一下,就会出现如下如的界面:

\

选择第一个就是建立数据库版的资源库,之后:

\

之后:

\

测试通过之后点击OK就回到最开始的界面,这时候选择test数据库连接,然后出入你的工程(我是这么叫的)ID和name,这里要记住,因为以后kitchen调度的时候要输入这个参数。

\

在接下来弹出的框中都点“是”,然后会出现这个界面:

vcq9o6yw0dfK1LS/4rrNxuTL+7/it9a/qqGjvOyy6dK7z8KjujwvcD4KPHA+ICAgICAgPC9wPgo8cD5TUUwmZ3Q7IGNvbm4gd2luZ3Mvd2luZ3NAcHJpc208YnI+CtLRway906GjPGJyPgpTUUwmZ3Q7IHNlbGVjdCBjb3VudCgxKSBmcm9tIHJfcmVwb3NpdG9yeV9sb2c7PC9wPgo8cD5DT1VOVCgxKTxicj4KLS0tLS0tLS0tLTxicj4KMDwvcD4KPHA+U1FMJmd0OzwvcD4KPHA+ICAgICAgse3S0b6tvai6w8HLoaO72LW91+6/qsq8tcS958Pmo6zRodTxdGVzdKOsteO798i3tqijrMi7uvO+zbvhs/bP1rXHwry21Luwv/KjrNPDu6fD3MLrxKzIz7a8ysdhZG1pbqOs0tS687/J0tTX1Ly6uMShozwvcD4KPHA+ICAgICAgvdPPwsC0vs2/ydLUv6rKvNPD1eK49rmkvt/By6GjPC9wPgo8cD4gICAgICDG5Mq1ttTT2rzytaW1xMr9vt2/4sr9vt21xLPpyKGjrLv5sb7Wu9Do0qrXqru7us3X99K11eLBvdbWtqvO96Gjz8LD5r7Nyse9qMGi0ru49tequ7u1xLK91uijujwvcD4KPHA+ICAgICAgMSC147v3zsS8/i0tJmd0O9DCvagtLSZndDvXqru7oaM8L3A+CjxwPiAgICAgIDIg1NrX87LgtcTK99e0wdCx7dbQ0aGhsNb3ttTP88r3obGjrNDCvahEQsGsvdOho7K91ui6zcnPw+a9qNfK1LS/4tK70fmho9K7uPbEv7Hqv+LSu7j21LS/4qGjPC9wPgo8cD4gICAgICAzINTausvQxLbUz/MtLSZndDvK5Mjr1eK49rXYt73Nz7P20ru49rHtyuTI66Os1NqhsMrks/ahscS/wrzPws3Ps/ahsLHtyuSz9qGxo6zU2qGw16q7u6GxtKbNz7P20ru49tfWts7RodTxwLSjrMjnzbyjujwvcD4KPHA+ICAgICAgPGltZyBzcmM9"https://www.cppentry.com/upload_files/article/57/1_9qp3u__.png" alt="\">

每一个对象都可以双击修改属性,下面以抽取world数据库的city表为例。

双击表输入,选择数据库连接,选择源数据库,然后点击“获取SQL查询语句”,在弹出的对话框里进行选择即可,之后会变成这样:

\

下面点击表输出:

\

点击字段选择:

这样,一个简单的抽取数据的转换就完成了。执行之,点击上面的绿色开始按钮。

我也处在学习中,希望可以把我的经验分享给和我一样的入门者。

下面是补充部分:

在一个Job或者一个trans建立好之后,就可以建立定时任务了。如果是DS,那么DS客户端本身就支持schedule,但是Kettle因为没有服务端和客户端的概念,因此只有使用linux的crontab,其实Job本身也支持定时,但是你必须保证图形界面一直开着,这样并不如crontab那么好。在命令行里使用kettle很简单,Job用kitchen调度,trans用pan调度。

下面是一个kitchen的调度命令:

bash /home/kettle/data-integration/kitchen.sh /rep kettle_demo /user username /pass passwd /level Minimal /dir /dirname /job jobname

rep那里写自己的资源库名称。

trans和上面一样,略有不同:

bash /home/kettle/data-integration/pan.sh /rep kettle_demo /user username /pass passwd /level Minimal /dir /dirname /trans transname

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇log_archive_dest_n和standby_arc.. 下一篇kettle子转换即映射

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C语言中,“指针”用 (2025-12-26 15:20:18)
·在c语言的指针运算中 (2025-12-26 15:20:15)
·C语言-函数指针与函 (2025-12-26 15:20:12)
·求navicat for mysql (2025-12-26 13:21:33)
·有哪位大哥推荐一下m (2025-12-26 13:21:30)