Kettle开发经验

mac2025-06-22  12

需要一个Kettle库,然后点击kettle右上角的Connect然后连接,连接出现的问题有: 连接成功后右上角的连接信息消失,可以到"C:\Users\用户名"下找到".kettle"文件然后删除重启Kettle 文件存储后文件跑到其他目录下,原因创建时不在保存目录,解决方式是另存为到目标目录
Kettle使用接口接入
使用生产记录:
限制:请求次数1次 字段中名称可以填写请求信息: 如: Content-Type URL
获取系统时间:
可以选取时间
字段选择:
可以选择修改排除还有设置字段格式 移除在流到下一节点就会失去移除的信息 格式设置可以在元数据里进行设置:

设置变量(可以在作业中进行获取使用):

如果在url中拼出现会出现转码问题的,可以进行转码使其正常进行请求:
如: http://10.10.10.10/123/123/123/123?123={"123":{"123":123,"123":123},"123":{},"123":{"123":"123","123":"123","123":[{"123":"123","123":"123","123":"123","123":"123"},{"123":"123","123":"123","123":"123","123":"123"}]}}就会出现转码问题,可以使用脚本进行转化然后正常使用: 如使用js脚本: var url = encodeURI(urlb);//上游流下一个urlb然后进行处理 var encode_Url=url;//转换后然后设置流向下一节点 true;

如果URL中有参数要进行实时替换,如:URL中的时间参数要用实时时间来进行替换请求, 那就可以在URL中用自定义单词或字母代替, 然年"获取系统时间"后使用"字符串替换"来进行替换URL中的单词或字母 -->图中为用500替换encode_Url中的SizeNum,然后将替换后的encode_Url以SizeNum_url输出到下一个节点

请求接口可以使用REST Client或者HTTP Client

还可以设置请求头信息

请求后返回json数据可以用JSON Input来接收,需要在文件里设置从字段获取源(获取源是在REST client中Result field name中设置的值),在里边选择字段可以获取json串中指定的数据,如果获取最外层的json信息可以使用"$[*].需要key",如果获取内层,可以使用"$.内层[*].内层指定key",以此类推

如果需要在json返回信息里每一条数据都添加一个字段,那么可以使用"记录关联(笛卡尔积输出)",比如要插入一个系统时间,就可以如下操作:

连接数据库(在主对象树的DB连接)
连接数据库时,Kettle需要使用数据库的驱动包 将数据库驱动包放到Kettle的lib目录下重启Kettle然后连接

连接阿里云的MaxCompute
下载: aliyun-kettle-odps-plugin-1.0.0.tar.gz 下载地址:https://download.csdn.net/download/qq_41466891/11946679 然后将解压后的文件夹直接放到Kettle的plugins目录下重启Kettle 会在转换中的"Big Data"中出现"Aliyun MaxCompute Input"和"Aliyun MaxCompute Output"打开后配置: >配置Endpoint: >>https://help.aliyun.com/document_detail/34951.html >配置Accessid >>阿里云个人信息中 >配置Access_key >>阿里云个人信息中

Kettle实现分页

完整笔记请点击

Kettle使用Excel接入

完整笔记请点击

Kettle使用xml接入

完整笔记请点击

在ecs上配置kettle任务调度

完整笔记请点击

喜欢的可以打赏,谢谢~如有不明白知识点或者其他需求可以添加作者🐧:1178342624

最新回复(0)