文章目录
etl
kettle
各个版本集成包下载:https://sourceforge.net/projects/pentaho/files/Data Integration/
kettle 中文网:http://www.kettle.net.cn/kettle
本地解压在:D:\迅雷下载\pdi-ce-9.0.0.0-423\data-integration
kettle连接数据库后,数据库自动创建使用kettle所需要的表结构
如何添加新用户
点击工具=》资源库=》探索资源
选择【安全】=》添加用户=》填写账号密码保存
linux 安装
http://www.kettle.net.cn/1884.html
kattle通过Carte远程调度
# 将Carte服务打开
Carte.bat pwd/carte-config-master-8080.xml
# 打开后的web服务:http://127.0.0.1:8080/kettle/status/
# 默认用户名/密码:cluster/cluster
还需要将spoon连接到Carte服务:
- spoon 转换-转换1-右键子服务器-new
- spoon 转换-转换1-右键Run configurations-new 选择slave server
转换常用环节
demo:https://www.cnblogs.com/limengqiang/archive/2013/01/16/KettleApply2.html
命令行
https://www.cnblogs.com/limengqiang/archive/2013/01/17/KettleApply3.html
http://www.kettle.net.cn/1349.html
当job是存放在资源库(一般资源库都使用数据库)中时,使用Kitchen.bat执行job时,需使用如下的命令行:
Kitchen.bat /rep kettle /user admin /pass admin /job job名
当job没有存放在资源库而存放在文件系统时,使用Kitchen.bat执行job时,需使用如下的命令行:
Kitchen.bat /norep /file user-transfer-job.kjb
日志
资源库里有一个叫r_LOG的表。真正的日志设置是在转换属性里的设置。
在/var/spoon/mail/root文件中会记得所有例行性任务的日志信息,cat /var/spoon/mail/用户名,可以查看到所有相关的例行性任务执行的日志信息
Kettle之效率提升
-
数据库查询和流查询注意使用环境
因为数据库查询为数据输入端输入一条记录,就对目标表进行一次查询,而流查询则是将目标表读取到内存中,数据输入端输入数据时,对内从进行查询,所以,当输入端为大数据量,而被查询表数据量较小(几百条记录),则可以使用流查询,毕竟将目标表读到内存中,查询的速度会有非常大的提升。同理,对于目标表是大数据量,还是建议使用数据库查询
-
谨慎使用javascript脚本,因为javascript本身效率就不高
-
数据库commit次数
-
表输入的sql语句的写法
-
注意日志输出,例如选择数据库更新方式,而且日志级别是debug,那么后台就会拼命的输出日志,会在很大程度上影响速度
KETTLE JAVA API
http://www.kettle.net.cn/1414.html