kettle

kettle中含有参数传递的定时任务

无人久伴 提交于 2020-03-12 09:43:47
(1)新建一个作业(新建->作业),并在控制面板右键: (2)设置一个命令参数: (3)把作业的参数传递给转换: (4)在转换中右键设置转换属性: (5)接收作业中设置的传递参数: (6)参数的获取: (7)用命令行执行此.kjb文件: 进入到kitchen目录下 执行的命令: 数据库设计:   一: 二: 附加( 附加部分转发自:http://www.cnblogs.com/loren-love-xixi/articles/5716774.html): 1.ktr的运行:运行transformation文件是通过Pan.bat来运行的。 打开cmd命令行窗口,转到Pan.bat所在的目录,如d:\data-integration,然后执行文件的命令为:pan /file D:\etltest\EtltestTrans.ktr 2.kjb的运行:运行job文件是通过kitchen.bat来运行的。 打开cmd命令行窗口,转到Pan.bat所在的目录,如d:\data-integration,然后执行文件的命令为:kitchen /file D:\etltest\jobOK.kjb 2.bat文件运行 如果觉得通过打开命令行输入麻烦,我们可以把它写在一个批处理文件中。如: d: cd D:\data-integration pan /file D:\etltest

kettle使用命令行来运行ktr和kjb

余生颓废 提交于 2020-03-12 09:43:38
1:cmd方式运行 1.ktr的运行:运行transformation文件是通过Pan.bat来运行的。 打开cmd命令行窗口,转到Pan.bat所在的目录,如d:\data-integration,然后执行文件的命令为:pan /file D:\etltest\EtltestTrans.ktr 2.kjb的运行:运行job文件是通过kitchen.bat来运行的。 打开cmd命令行窗口,转到Pan.bat所在的目录,如d:\data-integration,然后执行文件的命令为:kitchen /file D:\etltest\jobOK.kjb 2.bat文件运行 如果觉得通过打开命令行输入麻烦,我们可以把它写在一个批处理文件中。如: d: cd D:\data-integration pan /file D:\etltest\EtltestTrans.ktr 把这些内容保存在pan.bat里,通过双击panKtr.bat就可以执行ktr文件了。 同样地,我们把下面的内容: d: cd D:\data-integration kitchen /file D:\etltest\jobOK.kjb 保存在kitchenKjb.bat里,双击它,也可以执行kjb文件。 2 :kettle 的 kitchen.bat 后面参数说明 Options: /rep : Repository

Kettle 4.2源码分析第一讲--Kettle 简介

杀马特。学长 韩版系。学妹 提交于 2020-03-12 09:43:21
Pentaho Data Integration(PDI)简介 1. PDI结构简介 图 1‑1 PDI核心组件   Spoon是构建ETL Jobs和Transformations的工具。Spoon可以以拖拽的方式图形化设计,能够通过spoon调用专用的数据集成引擎或者集群。 Data Integration Server是一个专用的ETL Server,它的主要功能有: 功能 描述 执行 通过Pentaho Data Integration引擎执行ETL的作业或转换 安全性 管理用户、角色或集成的安全性 内容管理 提供一个集中的资源库,用来管理ETL的作业和转换。资源库包含所有内容和特征的历史版本。 时序安排 在spoon设计者环境中提供管理Data Integration Server上的活动的时序和监控的服务   Enterprise Console提供了一个小型的客户端,用于管理Pentaho Data Integration企业版的部署,包括企业版本的证书管理、监控和控制远程Pentaho Data Integration服务器上的活动、分析已登记的作业和转换的动态绩效。 2. PDI的组成部分 名称 描述 Spoon 通过图形接口,用于编辑作业和转换的桌面应用。 Pan 一个独立的命令行程序,用于执行由Spoon编辑的转换和作业。 Kitchen 一个独立的命令行程序

Win10安装Kettle7.1(配置)

北慕城南 提交于 2020-03-03 17:29:19
因为公司需求,最近需要用数据迁移和转换,目前用etl的比较多,现在选择了工具Kettle。 一:Kettle安装前JDK环境配置 由于Kettle是Java语言开发的,该软件的允许需要Java运行环境的依赖。需要先安装JDK,准备好Java软件的运行环境。安装jdk1.8版本 新版本 官网下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk10-downloads-4416644.html 点击打开链接 旧版本 官网地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 点击打开链接 1.安装jdk 本次用的版本是 jdk-8u66-windows-x64-2015101102 下载地址: https://note.youdao.com/ynoteshare1/index.html?id=f17b8af2d62b08aeb1e506668f603c13&type=note 注意,我安装jdk的文件是没有更改安装路径的,所以在环境配置变量里面有区别! 安装好后的文件路径 2.配置环境变量 对于Java程序开发而言,主要会使用JDK的两个命令:javac.exe、java.exe。路径:C:\Java\jdk 1.7.0 _09

java中调用kettle转换文件

谁都会走 提交于 2020-03-02 19:07:33
java中调用kettle转换文件 通过命令行也能够调用,然后java中调用命令行代码也能够。这样没有和java代码逻辑无缝集成。本文说明kettle5.1中假设通过其它API和java代码无缝集成;网上大多数资料都是低版本号的。在kettle5.x中已经不能执行。 1、 须要哪些jar文件 以kettle开头的是必须,上图最以下三个也要;红色框中的两个是我測试转换用到的。各自是生成UUID和文件。 要是少了jar文件,执行程序一定报错。大家依据错误到kettle安装文件夹LIB中找对应的jar加到编译路径中。 2、 演示样例说明怎样通过java调用转换 演示样例是把一个excel的内容导入到数据中。excel仅仅有两列,所以须要在kettle中生成一列uuid,然后导入到数据库中。 默认生成的uuid有‘-’间隔符,所以通过“Replace in string”替换为空; excel步骤,使用了命名參数,所以要在转换配置设置命名參数。 演示样例代码例如以下: publicclass KettleUtil2 { public String RES_DIR = "res"; private String fullFileName ; public KettleUtil2(String fileName){ fullFileName = System.getProperty("user

kettle 抽取数据到CSV文件

帅比萌擦擦* 提交于 2020-03-01 11:09:54
要从数据库中导出数据量较大的数据到CSV文件中,用kettle来导出。 新建一个kettle转换 在表输入里获取数据源 可以直接给相应字段设置别名 输出到文件 导出的文件名: 文件名称 浏览 自定义名称, 选择逗号分隔值的文件 分隔符默认的是分号; 改成逗号 字符编码设置 根据导出的数据库编码格式设置 一般为 UTF-8: 注意导出的CSV文件获取字段时,string类型 字段长度要清空 用默认宽度会报错,点击最小宽度 可一键操作。 来源: CSDN 作者: hyfstyle 链接: https://blog.csdn.net/hyfstyle/article/details/104570150

kettle批量生成随机数

放肆的年华 提交于 2020-03-01 01:50:54
kettle批量生成随机数 经常有需求要一下子生成多少条随机数,用kettle很方便实现的: 1.生成记录 可以设置生成行,也就是数据库的记录的数,比如生成100条记录,就写100,下面的名称,类型的表格可以不用填,填了也没什么太多的作用,除非要生成固定值记录。 2.生成随机数 这里没有限制格式以及精度,有点遗憾 3.Excel输出 文件,中设置输出路径, 字段,自动获取 输出结果长这样: 来源: CSDN 作者: shishi521 链接: https://blog.csdn.net/shishi521/article/details/104582352

解决kettle调度效率低,不可高并发调度方法

主宰稳场 提交于 2020-02-29 12:04:31
“我在spoon里面运行一个作业只要几秒种,但是在命令行中运行却要好几十秒?” “并行同时运行几个job,就把内存撑爆了,Kettle好占资源呀!” Kettle作为用户规模最多的开源ETL工具,强大简洁的功能深受广大ETL从业者的欢迎。但kettle本身的调度监控功能却非常弱。连Pentaho官方都建议采用crontab(Unix平台)和计划任务(Windows平台)来完成调度功能。调用kettle作业,实际上是通过pan和kitchen命令去调用。每一次调用都会重新初始化kettle运行环境,这个过程占用大量的时间。并且每启动一个kettle运行环境都相当于启动一个JVM进程。每个JVM则会占用几百兆(默认设置)的内存。所以同时运行几个作业,也会消耗大量内存资源。极端情况则可能会导致kettle内存溢出,产生致命错误。 https://my.oschina.net/u/944575/blog/1557410 http://www.taskctl.com/forum/detail_124.html 上述是Taskctl出的解决方案,但是如果我本身不愿意在多学习一个调度工具,其实也是可以用这个的。安装这个服务后,默认会生成两个调度插件,分别对应trans和job两种类型的。我们现在需要做的就是用crontab调用调度插件,配合着正确的参数值,就可以正常调度了,非常简单

Kettle执行SHELL脚本的问题

孤者浪人 提交于 2020-02-29 11:28:49
你在xshell终端执行程序的时候,不会报错,而用Kettle远程执行SHELL就报错。 比如我执行的报这样的错: 原因是: 我centos6装python3的时候sqlite3有问题,然后我重新装上最新的,并设置了环境变量 当我用Kettle远程执行SHELL的时候,脚本因为没有找到该环境变量导致报错。 直接在SHELL命令加上 . /etc/profile 即可。 来源: oschina 链接: https://my.oschina.net/u/1046672/blog/1613396

kettle异常

两盒软妹~` 提交于 2020-02-29 02:53:48
一个Kettle异常的解决方式 最近kettle中的几个转换抛出如下异常: Because of an error, this step can't continue: org.pentaho.di.core.exception.KettleException: Error inserting row into table [BOND_ISSUE] with values: [291209410397], [8067], [8067], [中国普天信息产业股份有限公司2009年度第一期短期融资券], [6], [1], [1420], [2], [2009/03/24 00:00:00.000], [中国普天信息产业股份有限公司], [99], [null], [null], [联合资信评估有限公司、中诚信国际信用评级有限公司], [A-1], [中国光大银行股份有限公司], [2], [2009/03/24 00:00:00.000], [全国银行间债券市场机构投资者(国家法律、法规禁止购买者除外)。], [\利率招标\簿记建档\], [100], [1000000], [null], [2009/03/30 00:00:00.000], [2009/03/31 00:00:00.000], [800000000], [800000000], [null], [2009/04