kettle脚本
⑴ kettle有什么特点
【好评赠送】Kettle软件包6.1-8.2免费下载
链接:https://pan..com/s/1yYLRTGL_D6MV14jVJAkOvg
Kettle最早是一个开源的ETL工具,全称为KDE Extraction, Transportation, Transformation and Loading Environment。在2006年,Pentaho公司收购了Kettle项目,原Kettle项目发起人Matt Casters加入了Pentaho团队,成为Pentaho套件数据集成架构师[1];从此,Kettle成为企业级数据集成及商业智能套件Pentaho的主要组成部分,Kettle亦重命名为Pentaho Data Integration[1-2]。Pentaho公司于2015年被Hitachi Data Systems收购。[3](Hitachi Data Systems于2017年改名为Hitachi Vantara[4])

⑵ Kettle实战之(2)过滤记录
启动kettle,点击文件/新建/转换
点击保存,命名为demo1
选择【主对象树】,右键点击【DB连接】,点击【新建】
填写数据源链接相关参数,链接数据源
选择【核心对象】,选择【输入】,选择【表输入】,拖入设计器中
双击设计器中的【表输入】,打开属性设页面,在sql编辑器中输入SQL脚本,例如
选择【核心对象】,选择【流程】,选择【过滤记录】,拖入设计器中,【表输入】链接【过滤记录】
双击【过滤记录】,打开编辑器
设置过滤条件
选择【核心对象】,选择【应用】,选择【写日志】,拖入设计器中
链接【过滤记录】
点击运行,将过滤结果打印出
至此,过滤记录完成
⑶ kettle 如何让执行sql脚本在最后执行
在转换里面各个【步骤】是并发执行的,数据流是按照顺序执行的,所以可以这样:
增加一个转换
把sq脚本放进去
并且把这个转换
放到悄想要执行在转换后面
就实现国在sql脚本在最后执行
⑷ 如何安装kettle
【好评赠送】Kettle软件包6.1-8(1).2,免费下载
链接:https://pan..com/s/1qSJoR5D1Ih9ZtfYEfncQKg
kettle 是纯 java 开发,开源的 ETL工具,用于数据库间的数据迁移 。可以在 Linux、windows、unix 中运行。有图形界面,也有命令脚本还可以二次开发。

⑸ kettle执行sql脚本删除数据
在kettle的控件目录里面有个脚本,里面有执行sql的控件,可直接在里面写delete语句来删除数据。
⑹ Kettle使用教程 二 给表字段设置默认值
我知道两种办法 ,毕竟是新手,各位大侠刀下留人
一:直接用sql 进行替换,
但是这样有问题,就是目标自己有值得时候,就不进行替换的
二:直接用脚本替换,不管哪种情况都会替换成功
三:还可以使用值映射。。直接映射成新的值就可以
⑺ 我创建了多个kettle脚本文件,如何批量执行这些脚本..(若是一个一个的执行,比较麻烦) 请高手指点
for i in $(ls *kettle*); do
source $i
done
⑻ kettle执行SQL脚本日志怎么监控
我理解为你的问题就是如何保存日期
资源库
转换属性中可以设置日志表
非资源库
用命令行执行可以将日志输出至文件
⑼ Kettle 实战之 (7) 执行SQL脚本
编辑转换的属性,录入参数信息,注意参数的格式
执行转换时输入相关参数的值,即可执行SQL脚本
依赖前面的表输入,将表输入中的每一行解析成SQL脚本进行执行,表输入中有几条数据,解析成几个SQL脚本执行
采用参数站位符‘?’,是有顺序的,需要严格按照顺序设置参数
⑽ kettle中java脚本怎么使用
完整例子如下:
Java代码
String firstnameField;
String lastnameField;
String nameField;
public boolean processRow(StepMetaInterface smi, StepDataInterface sdi) throws KettleException
{
// 获取输入
//
Object[] r = getRow();
// 输入为空,直接false
//
if (r == null) {
setOutputDone();
return false;
}
// 处于性能考虑,parameter只查一次
//
if (first) {
firstnameField = getParameter("FIRSTNAME_FIELD");
lastnameField = getParameter("LASTNAME_FIELD");
nameField = getParameter("NAME_FIELD");
first=false;
}
// 用 createOutputRow() 来保证output的数组够大,能够装下任何新的域
//
Object[] outputRow = createOutputRow(r, data.outputRowMeta.size());
String firstname = get(Fields.In, firstnameField).getString(r);
String lastname = get(Fields.In, lastnameField).getString(r);
// Set the value in the output field
//
String name = firstname+" "+lastname;
get(Fields.Out, nameField).setValue(outputRow, name);
// putRow will send the row on to the default output hop.
//
putRow(data.outputRowMeta, outputRow);
return true;
}
