kettle学习笔记(四)——kettle输入步骤
一、输入步骤概述
输入步骤主要分为以下几类:
• 生成记录/自定义常量
• 获取系统信息
• 表输入
• 文本文件输入
• XML 文件输入
• Json输入
• 其他输入步骤
二、生成记录和自定义常量
1.生成记录
由于生成记录每行都是一样的数据,所以便诞生了自定义常量数据来手工模拟数据
2.自定义常量数据
常用于构造一些测试数据
三、获取系统信息
获得各类系统信息,常见的包括:
• 转换开始时间。
• 关键时间点信息
• 最多十个命令行参数
• 主机名/ip/进程号/虚拟机内存等
• 上一个作业的完成情况参数
// 固定是整个转换开始的时间
更多系统信息细节,参考相关文档
四、表输入
表输入是比较常见的输入方式,通过执行SELECT语句,从数据库拉取输入数据
可以使用${}形式使用变量,如果使用?变量,要求前面步骤传过来的参数需要顺序一致
示例表输入配置如下:(按住shift进行组件连接)
数据库连接时可能会出现驱动不存在,需要复制mysql-connector到lib目录下
(如果kettle重装等可能会出现配置读取冲突等问题,可以在C:/用户/xx/.kettle下)
推荐使用JDNI方式进行连接:https://www.cnblogs.com/mq0036/p/9238646.html
JNDI方式有时候稍显不直观,可以通过统一数据源管理的方式:在主对象树DB连接下新建连接(新建转换后即可看到),然后右键->共享即可!
配置变量输入:
数据类型对应关系:
五、文本文件输入
文本文件输入:
处理有列分隔符(限定符、逃逸字符)的文本文件。
功能选项丰富、有错误处理机制。
CSV 文件输入:
简化了文本文件输入
通过 NIO、并行、延迟转换提高性能
固定宽度:
列固定宽度的文件,不用解析字符串,性能好。
1.文本文件输入
先看文件这一项:
双击文件节点进入编辑,直接点击浏览进行选择不是很推荐,
推荐使用变量(凡是旁边一个$形状的,都可以根据提示使用变量,内置变量参考这里),单击变量,旁边会显示变量的值,可以进行参考
可以在第一行选择文件或者目录,选择目录则可以在规则表达式进一步通过正则进行控制
然后点击增加,增加文件到选中的文件框中,之后点击显示文件名进行文件选择结果查看
也可以点击下方从步骤选择文件
继续设置输入的内容页:
// 这里目前不知何解,设置制表符\t字段会识别失败。换成分号;等就正常了
解决方案如下:
使用sublime先安装hexVIew插件,使用插件,点击toggle查看制表符的十六进制,然后分隔符处通过$[],例如制表符查看是09;
则分隔符为:$[09]
字段页通过获取字段查看分割结果:预览记录查看记录结果
错误处理页可以进行相关设置:
过滤页可以进行字段过滤:
例如选择第二列(从0开始位置),含有bb的
2.固定宽度
要求每一行都是固定宽度,然后通过宽度截取
### XML输入暂不赘述
### JSON输入暂不赘述
六、其它输入
Excel 输入
Access 输入
配置文件输入
SAP 输入
Oracle CDC 增量输入
消息队列输入
PDF文件输入
搜索引擎结果输入
可参考:https://www.cnblogs.com/LXL616/p/10842111.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
2019-07-06 java异常处理