carte_kettle导数据步骤
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
修改spoon.bat中的jdk路径后双击启动
选择第一个
创建数据源
点击确定后
用户名密码都是admin 可以重新改的
选择红色区域创建目录用于保存之后创建的job和转换
Job是任务管理转换是管理流程的、1、创建转换动态获得动态参数
选择输入中的表输入(输入到carte)
新建或者选择表输入数据源
通过oracle语法动态获得每天一个的表名
(SELECT'[CellTest].[dbo].[HotInfo'||to_char(sysdate-1,'yyyymmdd')||']'as bl F ROM dual)//sysdate-1前一天的日期dual;oracle的系统表
可以点击预览进行结果查看
选择脚本中的modified java script value(存放变量)
//Script here
var table_name=BL;//定义变量
setVariable("table_name",table_name,"r"); //保存变量table_name为table_name "r"为固定值
下方填写变量信息
使用write to log记录转换日志
填写日志内容
使用作业中的get variables获取之前定义好的参数
设置参数名称
新建一个输入(输入到carte)在sql语句中使用上一步的变量${currtable_name}注意变量的话要选择替换sql中的变量,记录数限制0为不限制
添加一个表输出
目标表:导入的目的地
提交记录量:单次提交量
Specify database fields 字段映射勾选后在下面窗体中可以手动输入关系
如果要让程序自动实现源与目标的对应需要再上一个表输入中设定正确表名(不能使用变量)
选择猜一猜
创建一个job
添加一个通用中的-transformation调用转换选择“参数获取“
使用javascript获取上一个转换中获得的变量
varcurrtable_name=parent_job.getVariable("table_name"); //定义新的变量并且获取变量
parent_job.setVariable("currtable_name",currtable_name); //保存变量到job中
true;//必须要
再次使用transformation让他调用导入转换
最后结束
执行时提示勾才是运行正常
缺少在数据插入完成后进行一步更新需要创建一个更新表用于记录那天数据更新成功了