【精品文档】我的kettle学习笔记

合集下载

kettle参数、变量详细讲解

kettle参数、变量详细讲解

kettle参数、变量详细讲解kettle 3.2 以前的版本⾥只有 variable 和 argument,kettle 3.2 中,⼜引⼊了 parameter 概念;variable 即environment variables(环境变量或全局变量),即使是不同的转换它们也拥有同样的值;⽽argument(位置参数)和parameter(命名参数),可以映射为局部变量,只针对⼀个特定的转换,⽐如像是限定结果集的⼤⼩和过滤条件。

1、 variable(变量)variables 也可以认为叫做environment variables , 就像它的名字⼀样,主要是⽤来设定环境变量的,⽐如最常见的:⽂件的存放地址,smtp 的配置等等,你也可以把它认为是编程语⾔⾥⾯的全局变量,即使是不同的转换它们也拥有同样的值;变量可以⽤在转换或作业中,可以通过在转换中使⽤ Set Variable 步骤定义或在kettle.properties⽂件中定义,⽂件的路径默认如下:$HOME/.kettle (Unix/Linux/OSX)C:\Documents andSettings\<username>\.kettle\ (Windows)C:\Users\<username>\.kettle\(Windows Vista)1.1、kettle.properties⽂件中定义全局变量打开⽂件,直接在⾥⾯定义,如: TODAY=to_char(sysdate,'yyyy-mm-dd'),这⾥⽀持数据库函数,说的更直⽩点,就是这⾥定义是个啥,那么在transformation⾥边取到的它就是啥。

在需要的地⽅,直接%%V_YES_DATE%%,或者${V_YES_DATE}就可以得到。

需要提醒的是如果编辑中⽂,需要navationtoascii⼯具或在eclipse中编辑。

定义后保存重启spoon才⽣效。

kettle新手教程

kettle新手教程

kettle新⼿教程1、kettle介绍kettle是⼀个ETL(Extract, Transform and Load抽取、转换、加载)⼯具,ETL⼯具在数据仓库项⽬使⽤很频繁,kettle也能够应⽤在下⾯⼀些场景:在不同应⽤或数据库之间整合数据把数据库中的数据导出到⽂本⽂件⼤批量数据装加载数据库数据清洗集成应⽤相关项⽬是个使⽤kettle使⽤很easy,通过图形界⾯设计实现做什么业务,⽆需写代码去实现。

因此,kettle是以⾯向元数据来设计。

kettle⽀持⾮常多种输⼊和输出格式。

包含⽂本⽂件。

数据表。

以及商业和免费的数据库引擎。

另外,kettle强⼤的转换功能让您⾮常⽅便操纵数据。

以下展⽰⼀个简单的“Hello World”演⽰样例,本教程将告诉你怎样轻松⽤kettle⼯作。

让你有基础可以学习更复杂的转换功能。

安装kettlekettle设计⼯具spoon介绍hello world演⽰样例⼜⼀次设计helloworld演⽰样例2、⼊门演⽰样例学习2.1、安装kettle⾸先通过官⽹下载kettle;需求环境:kettle须要jre1.5及以上版本号。

能够通过oracle官⽹免费下载;kettle安装kettle⽆需安装。

直接解压zip⽂件到指定的⽬录。

在类unix操作系统上。

须要运⾏下⾯脚本:cd Kettlechmod +x *.sh执⾏kettle中的⼀个图形⽤户界⾯叫spoon,spoon能够设计转换和作业,也能够执⾏转换和作业,以下的内容将继续介绍他们。

2.2、kettle设计⼯具spoon介绍Spoon是⼀个图形设计⼯具,⽤来设计和測试数据交换处理流程,也能够通过命令⾏(终端)运⾏处理流程。

资源库和⽂件在spoon中设计作业和转换。

kettle提供两种⽅式存储:资源库和⽂件;假设你选择资源库,spoon第⼀次启动时须要创建资源库。

选择⽂件⽅法,作业保存⽂件是的扩展名是KJB。

转换⽂件的扩展名为KTR,为了简化学习,以下教程採⽤后者。

计算机网络软件及应用:kettle调研手记-技巧汇总

计算机网络软件及应用:kettle调研手记-技巧汇总

kettle调研手记-技巧汇总1、对于源数据后面自动添加“.0”的问题可以通过在输入步骤“格式”栏中设置长度解决,如下图2、输入为excel文件时的设置说明3、根据入库单号把明细中的金额求和后,更新到主表中,但是如果有的入库单号在主表中不存在则就会报错,这是数据问题,解决办法为,在更新步骤中设置一下”忽略查询失败”,则只对目标表中存在数据进行更新,如下图:4、使用资源库(repository)登录时,默认的用户名和密码是admin/admin5、当job是存放在资源库(一般资源库都使用数据库)中时,使用Kitchen.bat执行job时,需使用如下的命令行:Kitchen.bat /rep repository_name /user admin /pass admin /job job 名称> E:\\test.log其中repository_nameo为repository.xml中的repository,在最下面6、当job没有存放在资源库而存放在文件系统时,使用Kitchen.bat执行job时,需使用如下的命令行:Kitchen.bat /norep /file user-transfer-job.kjb7、资源名称最好不要用中文,如果程序在保持时的字符集跟系统不一致,就会造成repositories.xml文件中出现乱码,导致无法启动,解决方法是:到用户目录下找到repositories.xml。

将.kettle 文件夹删除,重写用英文名称创建后,成功启动。

8、在WINDOWS下自动执行的配置:先建一个bat文件,内容为:E:\work\kettle\pdi-ce-4.2.0-RC1\data-integration\Kitchen.bat /rep kettle_test /user admin /pass admin /job job的名称然后在windows中新建一个定时任务即可9、在LINUX下执行脚本命令:10、KETTLE所在目录/data-integration/kitchen.sh /reprepository_name /user admin /pass admin /job job名称> /opt/data_wash/log/test.log其中repository_nameo为repository.xml中的repository,在最下面11、Repository.xml在linux系统下的位置:$HOME/.kettle/repository.xml12、定义全局变量:在.kettle目录下,打开kettle.properties文件,以键值对的方式添加即可,如:变量名称=变量值,然后在kettle设置图中可以利用”Get Variables”步骤获取到13、在windows下,kettle的资源库中的数据库表名为小写,而在linux下则为大写,这一点需要注意,以移植时需要所导出表的插入sql脚本,否则会出现无法登录,找不到表的错误。

kettle入门例子大全

kettle入门例子大全

Kettle 培训技术文档0507 Etl 介绍ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于金融IT 来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。

Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定。

Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。

kettle 部署运行将kettle2.5.1文件夹拷贝到本地路径,例如 D 盘根目录。

双击运行kettle文件夹下的spoon.bat文件,出现kettle欢迎界面:稍等几秒选择没有资源库,打开kettle主界面创建transformation,job点击页面左上角的创建一个新的transformation,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation 文件保存后后缀名为ktr点击页面左上角的创建一个新的job,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb 创建数据库连接在transformation页面下,点击左边的【Main Tree】,双击【DB连接】,进行数据库连接配置。

connection name自命名连接名称Connection type选择需要连接的数据库Method of access选择连接类型Server host name写入数据库服务器的ip地址Database name写入数据库名Port number写入端口号Username写入用户名Password写入密码例如如下配置:点击【test】,如果出现如下提示则说明配置成功点击关闭,再点击确定保存数据库连接。

Kettle入门教程

Kettle入门教程

Kettle入门教程最近做的项目用到了ETL工具Kettle,这个工具相当好用,可以将各种类型数据作为数据流,经过处理后再生成各种类型的数据。

正如其名“水壶”,将各个地方的水倒进水壶里,再用水壶倒入不同的容器。

不过一来初学乍用,二来对此任务不是很感兴趣,研究的不是很深入,可能是以一种不科学的方法使用的,但观教程,常用的内容似乎也涉及到了,并且Y大说过,要善于总结,于是有了这篇,作为入门说明吧。

一、下载与安装官网地址大概700~800M,下载好解压缩即可。

当然,要求JDK环境(似乎有自带)二、任务(.kjb)与转换(.ktr)Kettle工具的主界面-作业简单地说,一个转换就是一个ETL的过程,而作业则是多个转换、作业的集合,在作业中可以对转换或作业进行调度、定时任务等(据说定时不好用,可以通过其他方式,比如linux的crontab命令,不过实际使用中,这个指令也不大好使,有待查看日志探明原因。

)我在实际过程中,写的流程不是很复杂,当数据抽取需要多步骤时,分成多个转换,在集合到一个作业里顺序摆放,然后执行即可,不放到作业里的话,要对多个转换依次执行命令,比较麻烦。

三、煎锅、勺子、厨房是不是莫名其妙,以为走错了片场?然而这是几个重要的工具名称。

1)勺子-Spoon.bat/spoon.sh图形界面工具,就是启动上图主界面的命令行。

这个界面应该是JavaFX做的。

这个用来在有图形界面的系统下写任务(如何通过命令行写我不知道,并且我怀疑没有这个可能……),如Windows,写好后,也可以通过该工具进行执行,调试。

这个工具最大的问题是启动很慢,并且如果修改了数据库连接的配置,只有重新启动才能生效了。

这时候就体现了命令行的优越性。

转换窗口简单的转换示例左边有很多控件可供选择,上图展示了我在使用中经常用到的几个控件。

•执行SQL脚本:可以直接在控件里写SQL,并指定执行的库。

•表输入:通过查询数据库的表来获取输入数据流。

kettle入门例子大全【范本模板】

kettle入门例子大全【范本模板】

Kettle 培训技术文档0507 Etl 介绍ETL(Extract—Transform—Load的缩写,即数据抽取、转换、装载的过程),对于金融IT 来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。

Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定.Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。

kettle 部署运行将kettle2。

5.1文件夹拷贝到本地路径,例如D 盘根目录。

双击运行kettle文件夹下的spoon。

bat文件,出现kettle欢迎界面:稍等几秒选择没有资源库,打开kettle主界面创建transformation,job点击页面左上角的创建一个新的transformation,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation 文件保存后后缀名为ktr点击页面左上角的创建一个新的job,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb创建数据库连接在transformation页面下,点击左边的【Main Tree】,双击【DB连接】,进行数据库连接配置。

connection name自命名连接名称Connection type选择需要连接的数据库Method of access选择连接类型Server host name写入数据库服务器的ip地址Database name写入数据库名Port number写入端口号Username写入用户名Password写入密码例如如下配置:点击【test】,如果出现如下提示则说明配置成功点击关闭,再点击确定保存数据库连接。

kettle入门基础例子全集

kettle入门基础例子全集

Kettle 培训技术文档0507Etl 介绍ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于金融IT 来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。

Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定。

Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。

kettle 部署运行将kettle2.5.1文件夹拷贝到本地路径,例如D 盘根目录。

双击运行kettle文件夹下的spoon.bat文件,出现kettle欢迎界面:稍等几秒选择没有资源库,打开kettle主界面创建transformation,job点击页面左上角的创建一个新的transformation,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation 文件保存后后缀名为ktr点击页面左上角的创建一个新的job,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb 创建数据库连接在transformation页面下,点击左边的【Main Tree】,双击【DB连接】,进行数据库连接配置。

connection name自命名连接名称Connection type选择需要连接的数据库Method of access选择连接类型Server host name写入数据库服务器的ip地址Database name写入数据库名Port number写入端口号Username写入用户名Password写入密码例如如下配置:点击【test】,如果出现如下提示则说明配置成功点击关闭,再点击确定保存数据库连接。

KETTLE简单使用说明文档

KETTLE简单使用说明文档

KETTLE简单使用说明文档1. 下载和安装要运行此工具你必须安装SUN 公司的JAVA 运行环境 1.4 或者更高版本,相关资源你可以到网络上搜索JDK 进行下载。

设置JAVA 运行环境变量,JAVA_HOME 和PATHKETTLE 的下载可以到/取得最新版本,下载后解压,就可以直接运行。

2.kettle主要有两部分组成,主对象树,核心对象,3.新建一个kettle文件(数据库之间做处理)1)转换右键点击新建,如图所示2) 设置数据库连接,上图DB连接右键新建(支持多库连接): 如图:3)核心对象里面有很多组件,通过拖拽来供给我们做操作,如图4)添加一个源输入,打开输入文件夹,可以看到各种输入类型,支持文件,数据库等。

如图5)这里通过数据库操作,那我们这里拖拽一个表输入组件6)双击打开,可以看到你可以选择上面连接的数据库,然后通过获取sql语句来选择你要输入的源表进行操作。

并且sql语句支持传递变量参数和占位符参数,以及多表关联sql。

如下图7)输入表已经OK,那输出表呢,那我看下输出组件。

如图8)选中两个组件,右键新建节点连接。

如下图9)双击打开表输出,选择输出的数据库,以及目标表和输入表与目标表的字段映射10)映射选择以及匹配11)点击箭头弹出启动界面,点击启动,该kettle文件即可执行数据的迁移了12)上面是一个简单的数据库转换操作。

在表输入和表输出直接可以加不同组件对数据进行筛选过滤。

通过转换文件夹下的组件。

如图转换可以处理中文乱码,字段数字的计算,值的转换,序列的生成等等脚本可以用java代码,javascript,sql脚本等等查询支持调用存储过程,两个表直接关联查询等等以上只是针对kettle工具的简单实用介绍。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.如何使用执行SQL语句中的参数
2. carte.sh 192.168.6.125 8080
http://192.168.6.125:8080/kettle/jobStatus/?name=jobout
已困扰了多日,尚未解决,请牛人帮忙解决下,谢谢!
问题如下:我在服务器端启动carte之后,在客户端启动kettle并选择“远程执行”,启
动后,发现kettle本地的控制台不能正常显示中文(乱码),而在服务器端和页面的控制
台通过修改GetJobStatusServlet.java与GetTranStatusServlet.java都能正常显示,且
过程并无异常出现,应用都能找到指定的转换和作业。

应该是服务器端发送 response 时使用的编码,和客户端读取 response 时使用的编码不一
样造成的。可能是 kettle 的bug, 到 kettle 的 bug jira 上找找有没有类似的问题。

1.插入更新
5.1带参数执行shell的研究
1. 新建一个用户,在探索资源库里,用户里右键增加
阀值设置:
1. 入库时候,注意要勾选
特殊字段
2.

相关文档
最新文档