Kettle success用法是干什么用的?

后使用快捷导航没有帐号?
查看: 2602|回复: 12
kettle已经是第八周了,怎么感觉还是没入门。不知道学了这些拿来干什么?
论坛徽章:17
有同学这样的感受吗?该怎么办呢?
金牌会员, 积分 1434, 距离下一级还需 1566 积分
论坛徽章:11
同感!!!
高级会员, 积分 504, 距离下一级还需 496 积分
论坛徽章:2
高级会员, 积分 541, 距离下一级还需 459 积分
论坛徽章:1
觉得比较零散,要串起来
论坛徽章:12
本来学习使用这些工具就是这样,没办法,会使用一些控件来实现一些功能就可以了。较好能有一个项目做搞一下,这样比较好
金牌会员, 积分 1758, 距离下一级还需 1242 积分
论坛徽章:5
能知道些控件,到时候有项目的时候能上手快一些就可以了
论坛徽章:46
用来从不同的数据源抽取数据,公司在用
高级会员, 积分 947, 距离下一级还需 53 积分
论坛徽章:2
相信在实践中才会找到感觉的
论坛徽章:17
扬帆起航 发表于
本来学习使用这些工具就是这样,没办法,会使用一些控件来实现一些功能就可以了。较好能有一个项目做搞一下 ...
就是啊。没项目做,学了很多控件 都不知道拿来干嘛
金牌会员, 积分 2328, 距离下一级还需 672 积分
论坛徽章:15
估计有时间还得回顾一下,不然到结业考试时候估计会不通过啊,亚历山大kettle官方网站/
先下载压缩包,我这里下载的是4.4版本,大概400M
下载后解压,装JDK,配环境变量
配置完毕后,打开解压后根目录下有Spoon.bat,双击打开
创建资源库,用户名密码都是admin
kettle一共可以创建两种脚本文件,一种是transformation,就是任务,比如抽取数据,合并修改什么的。
另一种是job,就是用来调用transformation的,类似oracle里的job调用存储过程。
接着创建数据库连接,在此就不多说了,值得注意的是假如用的是oracle,压缩后的包里是没有oracle的jdbc驱动的,所以需要找一个ojdbc14或者classes12驱动包,放在libext/JDBC里边才可以,因为假如你要操作的是数据库连接数据库的时候用的是JDBC连接。
做完了这些工作,就可以开始了。打开之后,类似流程设计器这么个东西,对,实际上就是流程设计器
这个流程就是将两个关联表的数据,合并成1个表。
前提工作:在数据库新建两个表,有主外键关系,表名testout1,testout2,建第三个表testin。
双击表输入,设置testout1,双击表输入2,设置testout2
双击记录关联 (笛卡尔输出),见下图
所有的关联条件都是可以设置的,设置完毕,设置字段选择,在这里可以选择需要哪几列什么的。
最后设置表输出testin就可以了。
关于job,更简单,常用控件就是start,可以设置运行周期,
transformation 设置此job运行的transformation,
最后就是success。
浏览: 28269 次
来自: 北京
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix' 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
etl工具kettle学习总结
下载积分:1500
内容提示:etl工具kettle学习总结
文档格式:DOC|
浏览次数:450|
上传日期: 01:25:55|
文档星级:
全文阅读已结束,如果下载本文需要使用
 1500 积分
下载此文档
该用户还上传了这些文档
etl工具kettle学习总结
关注微信公众号标签:至少1个,最多5个
1. Kettle 开源的 ETL 工具
1-1. Kettle 的介绍
ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程, 我们经常会遇到各种数据的处理,转换,迁移,所以掌握一种 ETL 工具的使用必不可少。
Kettle 支持图形化的GUI设计界面,然后可以以工作流的形式流转,熟练它可以减少非常多的研发工作量,提高工作效率。
Kettle 允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么。
Kettle 中有两种脚本文件,transformation 和 job.
transformation 完成针对数据的基础转换.
job 则完成整个工作流的控制。
1-2. Kettle 家族产品
Kettle家族目前包括 4 个产品:Spoon、Pan、CHEF、Kitchen。
Spoon 允许你通过图形界面来设计 ETL 转换过程(Transformation)。
允许你批量运行由 Spoon 设计的 ETL 转换 (例如使用一个时间调度器)。Pan 是一后台执行的程序,没图界面。
允许你创建任务(Job)。 任务通过允许每个转换,任务,脚本等等,更有利于自动化更新数据仓库的复杂工作。任务通过允许每个转换,任务,脚本等等。任务将会被检查,看看是否正确地运行了。
Kitchen 允许你批量使用由 Chef 设计的任务 (例如使用一个时间调度器)。Kitchen 也是后台运行的程序。
2. 下载和部署安装
?Kettle可以在 网站下载??下载 kettle 压缩包,因 kettle 为绿色软件,解压缩到任意本地路径即可
安装需要 : JDK、JAVA_HOME、CLASSPATH、PENTAHO_JAVA_HOME 等环境变量。
2-1 kettle windows 安装
建议在 windows 下使用操作练习 kettle
windows 对图形化 支持好
直接启动 Spoon.bat 即可
2-2 kettle Linux 安装
linux 图形化不强,如需要在 linux 中查看一下 kettle 资源库是否连接正常,以及在 linux 上调度 kettle 的 job,就需要在 Linux上 配置 kettle 环境了。
验证 kettle 部署成功
cd data-integration
输入命令./kitchen.sh。如果出现帮助信息说明部署成功
2-3 kettle osx 安装
暂时无 mac 版本。
3. 应用场景
这里简单概括一下几种具体的应用场景,按网络环境划分主要包括:
3-1 表视图模式:
这种情况我们经常遇到,就是在同一网络环境下,我们对各种数据源的表数据进行抽取、过滤、清洗等,例如历史数据同步、异构系统数据交互、数据对称发布或备份等都归属于这个模式;传统的实现方式一般都要进行研发(一小部分例如两个相同表结构的表之间的数据同步,如果sqlserver数据库可以通过发布/订阅实现),涉及到一些复杂的一些业务逻辑如果我们研发出来还容易出各种bug;
3-2 前置机模式
数据交换的双方 A 和 B 网络不通,但是 A 和 B 都可以和前置机 C 连接..
3-3 文件模式
数据交互的双方 A 和 B 是完全的物理隔离,这样就只能通过以文件的方式来进行数据交互了,例如 XML 格式.
4. DEMO实战
4-1 简单表同步
功能描述 : 数据库 TestDB01 中的 UsersA表 到 数据库TestDB02 的UsersB表;实现流程 : 建立一个转换和一个作业Job;
一、建立转换
进入主界面,新建一个转换,转换的后缀名为 ktr.
创建 DB连接,选择新建 DB连接, Test按钮测试是否配置正确!
我们需要建立两个 DB连接,分别为 TestDB01 和 TestDB02;
(如报错可以 : 下载 mysql-connect jar 放入 lib 目录下)
建立步骤和步骤关系 : [输入] -& [表输入]
点击核心对象,我们从步骤树中选择【表输入】, 这样拖拽一个 表输入
之后,我们双击表输入之后,我们自己可以随意写一个 sql 语句,这个语句表示
可以在这个库中随意组合,只要 sql 语句没有错误即可,我这里只是最简单的把
TestA 中的所有数据查出来,语句为 select * from usersA。
建立步骤和步骤关系 : [输出] -& [插入/更新]
建立 连接 关系
然后在【表输入】上同时按住 shift 键和鼠标左键滑向【插入/更新】,这样建立两个步骤之间的连接
建立好转换之后,我们可以直接运行(点击上面的小三角形)这个转换,检查一下是否有错,如图,有错误都会在下面的控制台上输出。
二、建立作业 :
如果我们需要让这个转换定时执行怎么办呢,那么我们需要建立一个作业job
文件-&新建-&Job
在 Job 中 添加 转换
在新建的作业中, 打开刚才新建的 [简单表同步] 的 transformation
添加 START
通用 -& START
使 START 关联 -&
[简单表同步] Transformation
这样我们在【Start】步骤上面双击
设置时间间隔、定时执行 等需要的参数
这样这个作业就制定好了,点击保存之后,就可以在图形化界面上点击开始执行了。
5. win/linux 后台运行
5-1 win 后台运行
simpleTableSync.bat
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit
cd C:\WorkSoft\data-integration
kitchen /file:C:\WorkJob\ETL\tSyncTestJob.kjb /level:Basic&&C:\WorkJob\ETL\MyTest.log /level:Basic&&C:\WorkJob\ETL\MyTest.log
5-2 linux 后台运行
simpleTableSync.sh
#!/bin/bash
#################################################################
simpleTableSync @kettle
#################################################################
cd `dirname $0`/.. && wk_dir=`pwd` && cd -
source ${wk_dir}/util/env
echo_ex "${data_integration}/kitchen.sh -file=${data_dir}/tSyncTestJob.kjb"
${data_integration}/kitchen.sh -file=${data_dir}/tSyncTestJob.kjb
check_success
注意 : kjb 与 ktr 最好放在一个目录下。
[hdfs@node196 simpleTableSync]$ cd data/
[hdfs@node196 data]$ ll
-rw-rw-r--. 1 hdfs hdfs
6944 Jan 29 18:22 tSyncTestJob.kjb
-rw-rw-r--. 1 hdfs hdfs 13450 Jan 29 18:22 tSyncTestTrans.ktr
0 收藏&&|&&2
你可能感兴趣的文章
3 收藏,4.4k
3 收藏,3.4k
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可
分享到微博?
我要该,理由是:
在 SegmentFault,解决技术问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
一线的工程师、著名开源项目的作者们,都在这里:
获取验证码
已有账号?君,已阅读到文档的结尾了呢~~
kettle 使用中的一些常见问题
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
kettle 使用中的一些常见问题
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口

我要回帖

更多关于 ajax success调用函数 的文章

 

随机推荐