kettle学习笔记(四)——kettle输入步骤
一、输入步骤概述
输入步骤主要分为以下几类:
• 生成记录/自定义常量
• 获取系统信息
• 表输入
• 文本文件输入
• XML 文件输入
• Json输入
• 其他输入步骤
二、生成记录和自定义常量

1.生成记录

由于生成记录每行都是一样的数据,所以便诞生了自定义常量数据来手工模拟数据
2.自定义常量数据

常用于构造一些测试数据
三、获取系统信息
获得各类系统信息,常见的包括:
• 转换开始时间。
• 关键时间点信息
• 最多十个命令行参数
• 主机名/ip/进程号/虚拟机内存等
• 上一个作业的完成情况参数

// 固定是整个转换开始的时间

更多系统信息细节,参考相关文档
四、表输入
表输入是比较常见的输入方式,通过执行SELECT语句,从数据库拉取输入数据
可以使用${}形式使用变量,如果使用?变量,要求前面步骤传过来的参数需要顺序一致
示例表输入配置如下:


配置变量输入:

数据类型对应关系:

五、文本文件输入

文本文件输入:
处理有列分隔符(限定符、逃逸字符)的文本文件。
功能选项丰富、有错误处理机制。
CSV 文件输入:
简化了文本文件输入
通过 NIO、并行、延迟转换提高性能
固定宽度:
列固定宽度的文件,不用解析字符串,性能好。
1.文本文件输入
先看文件这一项:

双击文件节点进入编辑,直接点击浏览进行选择不是很推荐,
推荐使用变量(凡是旁边一个$形状的,都可以根据提示使用变量,内置变量参考这里),单击变量,旁边会显示变量的值,可以进行参考
可以在第一行选择文件或者目录,选择目录则可以在规则表达式进一步通过正则进行控制
然后点击增加,增加文件到选中的文件框中,之后点击显示文件名进行文件选择结果查看
也可以点击下方从步骤选择文件
继续设置输入的内容页:

// 这里目前不知何解,设置制表符\t字段会识别失败。换成分号;等就正常了
解决方案如下:
使用sublime先安装hexVIew插件,使用插件,点击toggle查看制表符的十六进制,然后分隔符处通过$[],例如制表符查看是09;
则分隔符为:$[09]
字段页通过获取字段查看分割结果:预览记录查看记录结果

错误处理页可以进行相关设置:

过滤页可以进行字段过滤:
例如选择第二列(从0开始位置),含有bb的

2.固定宽度
要求每一行都是固定宽度,然后通过宽度截取
### XML输入暂不赘述
### JSON输入暂不赘述
六、其它输入
Excel 输入
Access 输入
配置文件输入
SAP 输入
Oracle CDC 增量输入
消息队列输入
PDF文件输入
搜索引擎结果输入
kettle学习笔记(四)——kettle输入步骤的更多相关文章
- python学习笔记(四)---用户输入与while循环
用户输入 函数input demo1: message = input("all you input is chars:") print(message) demo2: 由inpu ...
- Kettle学习笔记(四)— 总结
目录 Kettle学习笔记(一)- 环境部署及运行 Kettle学习笔记(二)- 基本操作 kettle学习笔记(三)- 定时任务的脚本执行 Kettle学习笔记(四)- 总结 Kettle中设置编码 ...
- Kettle学习笔记(二)— 基本操作
目录 Kettle学习笔记(一)- 环境部署及运行 Kettle学习笔记(二)- 基本操作 kettle学习笔记(三)- 定时任务的脚本执行 Kettle学习笔记(四)- 总结 打开Kettle 打开 ...
- Kettle学习笔记(一)— 环境部署及运行
目录 Kettle学习笔记(一)-环境部署及运行 Kettle学习笔记(二)- 基本操作 kettle学习笔记(三)- 定时任务的脚本执行 Kettle学习笔记(四)- 总结 Kettle简介 Ket ...
- IOS学习笔记(四)之UITextField和UITextView控件学习
IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...
- java之jvm学习笔记四(安全管理器)
java之jvm学习笔记四(安全管理器) 前面已经简述了java的安全模型的两个组成部分(类装载器,class文件校验器),接下来学习的是java安全模型的另外一个重要组成部分安全管理器. 安全管理器 ...
- Learning ROS for Robotics Programming Second Edition学习笔记(四) indigo devices
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- 零拷贝详解 Java NIO学习笔记四(零拷贝详解)
转 https://blog.csdn.net/u013096088/article/details/79122671 Java NIO学习笔记四(零拷贝详解) 2018年01月21日 20:20:5 ...
- kvm虚拟化学习笔记(四)之kvm虚拟机日常管理与配置
KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...
- MySql学习笔记四
MySql学习笔记四 5.3.数据类型 数值型 整型 小数 定点数 浮点数 字符型 较短的文本:char, varchar 较长的文本:text, blob(较长的二进制数据) 日期型 原则:所选择类 ...
随机推荐
- [性能调优]在PeopleSoft中使用函数索引
那些没有在PeopleSoft系统遇到性能问题的人,特别是基于Oracle数据库的PeopleSoft,可能不知道基于函数的索引. 根据定义,基于函数的索引是使用如下方法定义的: 基于表达式,例如算术 ...
- iftop 命令
在Linux中有一个可以实施监控网络流量的一个工具那就是我们这次要说的iftop命令,这个命令不是系统自带的内置命令,在使用之前是需要先进行安装的 安装方式:yum -y install iftop就 ...
- openCV 扩图
1.扩图 import cv2 import numpy as np img=cv2.imread('Test2.jpg',1) width=img.shape[0] height=img.shape ...
- unity 获取水平FOV
unity中Camera的Field of View是指的垂直FOV,水平FOV可以经过计算得到. 创建脚本如下,把脚本挂载到摄像机上即可得到水平FOV: public class GetHorizo ...
- windows 7 下安装Oracle 9i 解决方法[转]
这里首先申明下,windows7下安装oracle9i 9.0.1版本肯定是不成功的,楼主安装过无数次,网上也找过很多方法,都不可行,所以就不用试了.这里说下oracle9i 9.2版本安装出现的问题 ...
- 【第三组】心·迹 Alpha版本 成果汇报
GITHUB地址 https://github.com/shirley-wu/HeartTrace 目录 项目简介 成果概要 详细展示(多图预警) 代码结构及技术难点 问题与规划 1. 项目简介 心· ...
- Git 命令快速浏览
Git 命令快速浏览 创建 Git 可管理的仓库 git init 查看当前仓库的状态 git status 添加到仓库,实际上是添加到暂存区 git add [-A | --all] git add ...
- Java为什么不支持多继承
类定义属性和方法 描述某一类事物的抽象 而接口定义的是行为 并不限于任何具体意向 按照逻辑上来说 单继承更明确 一个子类就应该是其父类代表的事物中的某个更具体的类别 不应该即是这种东西又是那种东西 而 ...
- spring定时任务表达式
@Scheduled 注解 cron表达式 一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素. 按顺序依次为 秒(0~59) 分钟(0~59) 小时(0~23) 天(月)(0~31,但是 ...
- 在IE中,JS方法名和input的name重名时,调用该方法无效
在IE中,JS方法名和input的name重名时,调用该方法无效.提示:网页错误详细信息 用户代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1 ...