Kettle操作手册-Kettle常用输入步骤

常用输入步骤

属于ETL中的E,导入数据。

csv文件输入

csv文件是一种有固定格式的文本文件。

具体用法在第一个例子中已经详解,不再赘述。

Excel文件输入

Excel有两种后缀名: .xls和.xlsx。

输入不同的后缀名文件需要选择不同的引擎。

Kettle操作手册-Kettle常用输入步骤

同时也可以选择同一目录下的所有文件。

选择目录,然后通配符号通配文件,也可以选择是否读取当前目录下子目录的文件。

Kettle操作手册-Kettle常用输入步骤

Get data from XML

XML是可扩展标记语言,主要用来传输与存储数据。

读取xml文件的话,就需要使用xpath,xpath即XML路径语言,他是一种用来确定XML文档中某部分位置的语言。

xpath基于XML的树状结构,提供在数据结构树中找寻节点的能力。

表达式 描述
nodename 选取此节点的所有子节点。
/ 从根节点选取。
// 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。
. 选取当前节点。
选取当前节点的父节点。
@ 选取属性。
div 选取div元素的所有子节点
/div 选取根元素div
div/p 选取div元素下的子元素p
//div 选取所有的div元素
div//p 选取div元素下的所有p元素
//@lang 选取名为lang的所有属性

Kettle操作手册-Kettle常用输入步骤

Kettle操作手册-Kettle常用输入步骤

Kettle操作手册-Kettle常用输入步骤

JSON input

一种轻量型的数据交换格式。

JSON核心概念:数组([]中的数据),对象({}中的数据),属性(k:v的数据)

JsonPath的操作符

符号 描述
$ 查询的根节点对象,用于表示一个json数据,可以是数组或对象
@ 过滤器断言(filter predicate)处理的当前节点对象,类似于java的this字段
* 通配符,可以表示一个名字或数字
上一级
. 一个子节点
[’’,’’,…] 多个子节点
[’’,’’,…] 多个数组下标
[start:end] 数组片段
[?()] 过滤器表达式,结果为布尔型

json的输入前需要提前分析好json格式,然后可以进行多重输入保证最后的输出。

Kettle操作手册-Kettle常用输入步骤

文本文件输入

提取日志信息的数据是开发常见的操作,日志信息基本都是文本类型。

Kettle操作手册-Kettle常用输入步骤

生成记录

数据仓库中绝大多数的数据都是业务系统生成的动态数据,但是其中一部分维度数据不是动态的,比如:日期维度。

Kettle操作手册-Kettle常用输入步骤

这样就可以生成1000条固定的静态信息。

表输入

要是想要操控数据库,就得先下载数据库驱动,然后放置在…\pdi解压目录 \data-integration\lib下。

Kettle操作手册-Kettle常用输入步骤

Kettle操作手册-Kettle常用输入步骤

自定义常量数据

在转换中有可能我们需要录入数据,这就需要自定义常量输入

Kettle操作手册-Kettle常用输入步骤
Kettle操作手册-Kettle常用输入步骤