ETL及kettle介绍

ETL及kettle介绍
ETL及kettle介绍

目录

1. ETL知识 .........................................................................................................错误!未定义书签。

1.1. ETL定义 ..............................................................................................错误!未定义书签。

定义..................................................................................................错误!未定义书签。

前提..................................................................................................错误!未定义书签。

原则..................................................................................................错误!未定义书签。

1.2. 模式及比较........................................................................................错误!未定义书签。

1.3. ETL过程 ..............................................................................................错误!未定义书签。

总流程..............................................................................................错误!未定义书签。

数据抽取流程..................................................................................错误!未定义书签。

数据清洗流程..................................................................................错误!未定义书签。

数据转换流程..................................................................................错误!未定义书签。

数据加载流程..................................................................................错误!未定义书签。

1.4. 问题分析............................................................................................错误!未定义书签。

字符集问题......................................................................................错误!未定义书签。

缓慢变化维处理..............................................................................错误!未定义书签。

增量、实时同步的处理..................................................................错误!未定义书签。

断点续传..........................................................................................错误!未定义书签。

1.5. ETL工具 ..............................................................................................错误!未定义书签。

2. Kettle简介及使用 .........................................................................................错误!未定义书签。

2.1. 什么Kettle? .....................................................................................错误!未定义书签。

2.2. 下载及安装Kettle .............................................................................错误!未定义书签。

2.3. Kettle简单例子 ..................................................................................错误!未定义书签。

启动Kettle .......................................................................................错误!未定义书签。

创建transformation过程 ...............................................................错误!未定义书签。

创建job过程 ..................................................................................错误!未定义书签。

命令行运行ktr和kjb .....................................................................错误!未定义书签。

1.ETL知识

1.1.ETL定义

1.1.1.定义

●定义:

数据的抽取(Extract)、转换(Transform)、装载(Load)的过程。

●目标:

数据优化。以最小代价(包括对日常操作的影响和对技能的要求) 将针对日常业务操作的数据转化为针对数据仓库而存储的决策支持型数据。

1.1.

2.前提

●确定ETL范围

通过对目标表信息的收集,确定ETL的范围

●选择ETL工具

考虑资金

运行的平台、对源和目标的支持程度、可编程的灵活性、对源数据变化的监测、数据处理时间的控制、管理和调度功能、对异常情况的处理

●确定解决方案

抽取分析、变化数据的捕获、目标表的刷新策略、数据的转换及数据验证

1.1.3.原则

●应尽量利用数据中转区对运营数据进行预处理。保证数据的安全性、集成

与加载的高效性。

●ETL的过程应是主动“拉取”,而不是从内部“推送”,其可控性将大为增

强。

●流程化的配置管理和标准协议

●数据质量的保证

正确性(Accuracy):数据是否正确体现在现实或可证实的来源

完整性(Integrity):数据之间的参照完整性是否存在或一致

一致性(Consistency):数据是否被一致的定义或理解

完备性(Completeness):所有需要的数据是否都存在

有效性(Validity):数据是否在企业定义的可接受的范围之内

时效性(Timeliness):数据在需要的时间是否有效

可获取性(Accessibility):数据是否易于获取、易于理解和易于使用

数据格式错误(如缺失数据、数据值超出范围或数据格式非法等)

数据一致性:数据源系统为了性能的考虑,会在一定程度上舍弃外键约束,这通常会导致数据不一致。例如在帐务表中会出现一个用户表中没有的用户ID,在例如有些代码在代码表中找不到等。

KETTLE组件介绍与使用

KETTLE组件介绍与使用 4.1 Kettle使用 Kettle提供了资源库的方式来整合所有的工作,; 1)创建一个新的transformation,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为Trans,kettle默认transformation文件保存后后缀名为ktr; 2)创建一个新的job,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为Job,kettle默认job文件保存后后缀名为kjb; 4.2 组件树介绍 4.2.1Transformation 的主对象树和核心对象分别如下图:

Transformation中的节点介绍如下: Main Tree:菜单列出的是一个transformation中基本的属性,可以通过各个节点来查看。DB连接:显示当前transformation中的数据库连接,每一个transformation的数据库连接都需要单独配置。 Steps:一个transformation中应用到的环节列表 Hops:一个transformation中应用到的节点连接列表 核心对象菜单列出的是transformation中可以调用的环节列表,可以通过鼠标拖动的方式对环节进行添加: Input:输入环节 Output:输出环节 Lookup:查询环节 Transform:转化环节 Joins:连接环节 Scripting:脚本环节 4.2.2 Job 的主对象树和核心对象分别如下图: Main Tree菜单列出的是一个Job中基本的属性,可以通过各个节点来查看。 DB连接:显示当前Job中的数据库连接,每一个Job的数据库连接都需要单独配置。 Job entries/作业项目:一个Job中引用的环节列表 核心对象菜单列出的是Job中可以调用的环节列表,可以通过鼠标拖动的方式对环节进行添加。 每一个环节可以通过鼠标拖动来将环节添加到主窗口中。 并可通过shift+鼠标拖动,实现环节之间的连接。

ETL及kettle介绍

目录 1. ETL知识 (2) 1.1. ETL定义 (2) 1.1.1. 定义 (2) 1.1.2. 前提 (2) 1.1.3. 原则 (2) 1.2. 模式及比较 (3) 1.3. ETL过程 (6) 1.3.1. 总流程 (6) 1.3.2. 数据抽取流程 (7) 1.3.3. 数据清洗流程 (7) 1.3.4. 数据转换流程 (9) 1.3.5. 数据加载流程 (10) 1.4. 问题分析 (11) 1.4.1. 字符集问题 (11) 1.4.2. 缓慢变化维处理 (12) 1.4.3. 增量、实时同步的处理 (12) 1.4.4. 断点续传 (13) 1.5. ETL工具 (13) 2. Kettle简介及使用 (14) 2.1. 什么Kettle? (14) 2.2. 下载及安装Kettle (14) 2.3. Kettle简单例子 (16) 2.3.1.启动Kettle (16) 2.3.2.创建transformation过程 (17) 2.3.3.创建job过程 (37) 2.3.4.命令行运行ktr和kjb (41)

1.ETL知识 1.1.ETL定义 1.1.1.定义 ●定义: 数据的抽取(Extract)、转换(Transform)、装载(Load)的过程。 ●目标: 数据优化。以最小代价(包括对日常操作的影响和对技能的要求) 将针对日常业务操作的数据转化为针对数据仓库而存储的决策支持型数据。 1.1. 2.前提 ●确定ETL范围 通过对目标表信息的收集,确定ETL的范围 ●选择ETL工具 考虑资金 运行的平台、对源和目标的支持程度、可编程的灵活性、对源数据变化的监测、数据处理时间的控制、管理和调度功能、对异常情况的处理 ●确定解决方案 抽取分析、变化数据的捕获、目标表的刷新策略、数据的转换及数据验证 1.1.3.原则 ●应尽量利用数据中转区对运营数据进行预处理。保证数据的安全性、集成 与加载的高效性。 ●ETL的过程应是主动“拉取”,而不是从内部“推送”,其可控性将大为增 强。 ●流程化的配置管理和标准协议 ●数据质量的保证 正确性(Accuracy):数据是否正确体现在现实或可证实的来源 完整性(Integrity):数据之间的参照完整性是否存在或一致

Kettle开发使用手册

Kettle开发使用手册2017年4月

版本历史说明

1.Kettle介绍 1.1.什么是Kettle Kettle是纯Java编写的、免费开源的ETL工具,主要用于抽取(Extraction)、转换(Transformation)、和装载(Loading)数据。Kettle中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。在这种思想的设计下,Kettle广泛用于不同数据库之间的数据抽取,例如Mysql数据库的数据传到Oracle,Oracle数据库的数据传到Greenplum数据库。1.2.Kettle的安装 Kettle工具是不需要安装的,直接网上下载解压就可以运行了。不过它依赖于Java,需要本地有JDK环境,如果是安装4.2或5.4版本,JDK需要1.5以上的版本,推荐1.6或1.7的JDK。 运行Kettle直接双击里面的批处理文件spoon.bat就行了,如图1.1所示: 图1.1

2.Kettle脚本开发 2.1.建立资源库(repository仓库) Repository仓库是用来存储所有kettle文件的文件系统,由于数据交换平台服务器管理kettle文件也是用Repository仓库,因此我们这边本地的kettle开发环境也是要用到该资源库。建立资源库的方式是工具 --> 资源库- -> 连接资源库,这时候弹出一个窗口,我们点击右上角的“+”号,跟着点击下面的kettle file repository选项,按确定,如图2.1所示: 图2.1 跟着在右上角选择一个目录,建议在kettle路径下新建repository文件夹,再选择这个文件夹作为根目录,名称和描述可以任意写,如图2.2所示: 图2.2 建完后会kettle工具会自动连接到repository资源库,每次打开kettle 也会弹出一个窗口让你先连接到资源库。在连接到资源库的情况下打开文件就是资源库所在目录了,如图2.3所示。注意你在资源库建的目录结构要跟数据交换平台的目录结构一致,这样写好kettle脚本,保存后放的路径能跟交换平台的目录结构一致了。

ETL及kettle介绍

目录 1. ETL知识 (3) 1.1. ETL定义 (3) 1.1.1. 定义 (3) 1.1.2. 前提 (3) 1.1.3. 原则 (3) 1.2. 模式及比较 (4) 1.3. ETL过程 (7) 1.3.1. 总流程 (7) 1.3.2. 数据抽取流程 (8) 1.3.3. 数据清洗流程 (8) 1.3.4. 数据转换流程 (10) 1.3.5. 数据加载流程 (11) 1.4. 问题分析 (12) 1.4.1. 字符集问题 (12) 1.4.2. 缓慢变化维处理 (14) 1.4.3. 增量、实时同步的处理 (14) 1.4.4. 断点续传 (15) 1.5. ETL工具 (15) 2. Kettle简介及使用 (16)

2.1. 什么Kettle? (16) 2.2. 下载及安装Kettle (17) 2.3. Kettle简单例子 (19) 2.3.1. 启动Kettle (19) 2.3.2. 创建transformation过程 (20) 2.3.3. 创建job过程 (41) 2.3.4. 命令行运行ktr和kjb (45)

1.ETL知识 1.1.ETL定义 1.1.1.定义 ●定义: 数据的抽取(Extract)、转换(Transform)、装载(Load)的过程。 ●目标: 数据优化。以最小代价(包括对日常操作的影响和对技能的要求) 将针对日常业务操作的数据转化为针对数据仓库而存储的决策支持型数据。 1.1. 2.前提 ●确定ETL范围 通过对目标表信息的收集,确定ETL的范围 ●选择ETL工具 考虑资金 运行的平台、对源和目标的支持程度、可编程的灵活性、对源数据变化的监测、数据处理时间的控制、管理和调度功能、对异常情况的处理 ●确定解决方案 抽取分析、变化数据的捕获、目标表的刷新策略、数据的转换及数据验证 1.1.3.原则 ●应尽量利用数据中转区对运营数据进行预处理。保证数据的安全性、集 成与加载的高效性。

kettle入门例子大全

Kettle 培训技术文档0507 Etl 介绍 ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于金融IT 来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。 Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高 效稳定。Kettle中有两种脚本文件,transformation和job,transformation完成针 对数据的基础转换,job则完成整个工作流的控制。 kettle 部署运行 将kettle2.5.1文件夹拷贝到本地路径,例如D 盘根目录。 双击运行kettle文件夹下的spoon.bat文件,出现kettle欢迎界面:

稍等几秒 选择没有资源库,打开kettle主界面

创建transformation,job 点击页面左上角的创建一个新的transformation,点击保存到本地路 径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation 文件保存后后缀名为ktr 点击页面左上角的创建一个新的job,点击保存到本地路径,例如保 存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb 创建数据库连接 在transformation页面下,点击左边的【Main Tree】,双击【DB连接】,进行 数据库连接配置。

connection name自命名连接名称Connection type选择需要连接的数据库Method of access选择连接类型 Server host name写入数据库服务器的ip地址Database name写入数据库名 Port number写入端口号 Username写入用户名 Password写入密码 例如如下配置:

KETTLE详细设计说明

. . . . KETTLE详细设计说明书 V0.1 变更记录

1 Kettle界面介绍 双击Kettle.exe或者Spoon.bat打开Kettle图形界面化如下: (图1.1) Kettle中有两类设计分别是:Transformation(转换)与Job(作业),Transformation完成针对数据的基础转换,Job则完成整个工作流的控制。 Kettle常用三大家族:Spoon、Pan、Kitchen。 Spoon:通过图形界面方式设计、运行、调试Job与Transformation。 Pan:通过脚本命令方式来运行Transformation。 Kitchen:通过脚本命令方式来运行Job,一般就是通过调用Kitchen脚本来完成定时任务。 说明:当打开Kettle时显示的是Kettle的相关版本信息与GNU相关协议说明。

(图1.2) 说明:打开Kettle时弹出的窗口提示以资源库方式登录相关信息,关于乌江水电项目工程存储方式是以XML文件方式来进行存储,所以我就直接点击“没有资源库”。 图(1.3) 说明:进入Kettle设计界面。提示关于Spoon相关信息,这里直接点击“关闭”按钮。

(图1.4) 说明:图片中所使用到的字母位置标识说明。 (A):Kettle所使用到的菜单栏。 (B):在使用Kettle时所涉及使用到的对象。 (C):Kettle中所有的组件。 (D):根据选择(B)或者(C)显示相应的结果。 (E):Kettle设计界面。 (图1.5) 说明: 文件:是对Kettle所生成的Job与Trans进行相关的操作,如:新建、打开、保存、导入、

pentaho-Kettle安装及使用说明(例子)

Kettle安装及使用说明 1.什么Kettle? Kettle是一个开源的ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程)项目,项目名很有意思,水壶。按项目负责人Matt的说法:把各种数据放到一个壶里,然后呢,以一种你希望的格式流出。Kettle包括三大块: Spoon——转换/工作(transform/job)设计工具(GUI方式) Kitchen——工作(job)执行器(命令行方式) Span——转换(trasform)执行器(命令行方式) Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高 效稳定。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 2.Kettle简单例子 2.1下载及安装Kettle 下载地址:https://www.360docs.net/doc/ce7919617.html,/projects/pentaho/files 现在最新的版本是 3.6,为了统一版本,建议下载 3.2,即下载这个文件pdi-ce-3.2.0-stable.zip。 解压下载下来的文件,把它放在D:\下面。在D:\data-integration文件夹里,我们就可以看到Kettle的启动文件Kettle.exe或Spoon.bat。 2.2 启动Kettle 点击D:\data-integration\下面的Kettle.exe或Spoon.bat,过一会儿,就会出现Kettle的欢迎界面:

稍等几秒,就会出现Kettle的主界面: 2.3 创建transformation过程 a.配置数据环境 在做这个例子之前,我们需要先配置一下数据源,这个例子中,我们用到了三个数据库,分别是:Oracle、MySql、SQLServer,以及一个文本文件。而且都放置在不同的主机上。 Oralce:ip地址为192.168.1.103,Oracle的实例名为scgtoa,创建语句为:create table userInfo( id int primary key,

自己总结的Kettle使用方法和成果

KETTLE使用自己总结的Kettle使用方法和成果说明 简介 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。 Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。 Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。 Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 Kettle可以在https://www.360docs.net/doc/ce7919617.html,/网站下载到。 注:ETL,是英文Extract-Transform-Load 的缩写,用来描述将数据从来源端经过萃取(extract)、转置(transform)、加载(load)至目的端的过程。ETL 一词较常用在数据仓库,但其对象并不限于数据仓库。 下载和安装 首先,需要下载开源免费的pdi-ce软件压缩包,当前最新版本为5.20.0。 下载网址:https://www.360docs.net/doc/ce7919617.html,/projects/pentaho/files/Data%20Integration/然后,解压下载的软件压缩包:pdi-ce-5.2.0.0-209.zip,解压后会在当前目录下上传一个目录,名为data-integration。 由于Kettle是使用Java开发的,所以系统环境需要安装并且配置好JDK。 ?Kettle可以在https://www.360docs.net/doc/ce7919617.html,/网站下载 ? 下载kettle压缩包,因kettle为绿色软件,解压缩到任意本地路径即可。运行Kettle 进入到Kettle目录,如果Kettle部署在windows环境下,双击运行spoon.bat 或Kettle.exe文件。Linux用户需要运行spoon.sh文件,进入到Shell提示行窗口,进入到解压目录中执行下面的命令: # chmod +x spoon.sh # nohup ./spoon.sh &后台运行脚本 这样就可以打开配置Kettle脚本的UI界面。

Kettle使用手册

Kettle培训手册 Etl介绍 ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于金融IT来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。 Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 kettle部署运行 将kettle2.5.1文件夹拷贝到本地路径,例如D盘根目录。 双击运行kettle文件夹下的spoon.bat文件,出现kettle欢迎界面:

稍等几秒 选择没有资源库,打开kettle主界面

创建transformation,job 点击页面左上角的解并到本地路径,例如保存到D:/etltest下,保存文件名为EtltestTrans,kettle默认transformation 文件保存后后缀名为ktr 点击页面左上角的解并到本地路径,例如保存到D:/etltest下,保存文件名为EtltestJob,kettle默认job文件保存后后缀名为kjb 创建数据库连接

在transformation页面下,点击左边的【Main Tree】,双击【DB连接】,进行数据库连接配置。 Connection name自命名连接名称 Connection type选择需要连接的数据库 Method of access选择连接类型 Server host name写入数据库服务器的ip地址 Database name写入数据库名 Port number写入端口号 Username写入用户名 Password写入密码 例如如下配置:

kettle使用手册

1打开程序,点击 spoon.bat 其实对于简单的数据库数据的抽取,基本只需要转换(.ktr格式)和作业(.kjb格式)这两种东西。下面就是建立一个转换的步骤: a 点击文件-->新建-->转换。 b 在左侧的树状列表中选“主对象树”,新建DB连接(参照第4点)。 c 在核心对象-->输入这个地方拖出一个表输入,在“输出”目录下拖出“表输出”,按住shift,从一个对象拖到另一个对象可进行连线。 2基本作业由开始,转换,成功3步骤组成。步骤之间使用shift+左键连线。 2.1‘1’代表无条件执行; 2.2‘2’代表上一步执行完成后,再执行下一步; 2.3‘3’代表不执行,左击连接线使其生效(绿色)或失效(灰色)。

3打开具体步骤中的转换流程,点击‘Transformation’跳转至相应具体转换流程, 编辑此转换具体路径,双击转换,弹出窗口,‘1’为相对路径,点击‘2’选择具体Visit.ktr 转换,为绝对路径。

4建立数据库连接,输入相应信息测试,成功即可 图4 5转换具体设置,如图4,‘表输出’至‘文本文件输出’流程跳接线为错误处理步骤,当输出格式不能满足表输出的目的表结构类型时,将会将记录输出到‘文本文件输出’

中的记录中。 5.1双击‘表输入’,输入相应的SSQL语句,选择配置数据库连接,或新增,预览查询 生成的结果(如果数据库配置中使用变量获取,此处预览生成错误)。 5.2双击‘表输出’,选择数据库连接,‘浏览’选择相应目标表,(此处‘使用批量插 入’勾选去除,目的是在错误处理步骤中无法使用批量处理,可能是插件兼容问 题) 6表输出插件定义 a) Target Schema:目标模式。要写数据的表的Schema的名称。允许表明中包含“。”对数据源来 说是很重要的 b) 目标表:要写数据的表名。

kettle操作文档

Kettle操作文档 1.Kettle介绍。 (2) 2. Kettle下载。 (2) 3.使用规范和注意事项。 (3) 3.1.配置数据库的全局变量。 (3) 3.2.文件命名规范(不要用汉字)。 (3) 3.3.文件存放位置。 (3) 3.4.配置启动任务文件。 (3) 3.5.注意事项。 (4) 4. Kettle部署使用。 (4) 4.1.启动kettle。 (4) 4.2.创建转换文件。 (5) 4.2.1.使用标识字段实现新增数据。 (5) 4.2.2.使用时间戳实现新增或修改数据。 (11) 4.2.3.使用时间比较实现新增或修改数据。 (14) 4.2.4.使用对某一数据值比较实现新增或修改数据。 (17) 4.3.创建任务文件。 (19) 4.4.命令行启动任务。 (20)

1.Kettle介绍。 ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于政府部门来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。 Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定,提供了图形化界面,使用很方便。Kettle中有两种脚本文件,transformation和job,transformation 完成针对数据的基础转换,job则完成整个工作流的控制。 2.Kettle下载。 Kettle可以在http://2.2.2.240/bbs/网站下载kettle压缩包,因kettle为绿色软件,解压即可使用。这个压缩包,公司加了一些功能,跟官网下载的不太一样,建议使用公司论坛上的压缩包。 资料网站:https://www.360docs.net/doc/ce7919617.html,/。 注:解压路径尽量不要有中文。 .kettle:存放kettle的一些环境变量信息,资源库的信息。 jre6:存放java运行库文件(1.6版本)。 launcher:存放启动的文件以及启动的配置信息。 lib:存放kettle的库文件。 libext:存放用到的外部库文件。 libswt:存放用到的界面库文件。 plugins:存放插件文件。 resources:存放编写的转换和任务文件,以及日志和任务 配置信息。 ui:存放用到的的图片和配置信息。 Kitchen.bat:任务文件执行器(命令行模式)。 Pan.bat:转换文件执行器(命令行模式)。 set-pentaho-env.bat:设置kettle运行的环境变量。 Spoon.bat:打开设计工具(界面方式)。 Spoon.ico,spoon.png:工具的图标。 start.bat:启动存放在resources目录下的任务配置文件。 说明.txt:使用的规范和注意事项。

Kettle产品详细介绍

晴天云

目录 Kettle产品详细介绍 0 Kettle产品详细介绍 (2) 1.Kettle简介 (2) 2.Kettle 的安装 (2) 3.Kettle 的详细介绍 (3) 3.1Kettle 资源库管理 (3) 3.1.1新建资源库 (4) 3.1.1新建资源库 (4) 3.1.2更新资源库 (7) 3.1.3资源库登陆和用户管理 (8) 3.1.4资源库登录和没有资源库登录的区别 (9) 3.2菜单栏介绍 (11) 3.2.1文件 (11) 3.2.2 编辑 (14) 2.2.3 视图 (20) 2.2.4 资源库 (21) 3.2.5 转换 (23) 3.2.6 作业 (29) 3.2.7 向导 (32) 3.2.8 帮助 (34) 3.3工具栏介绍 (35) 3.3.1 transformation的工具栏 (35) 3.3.2 Jobs工具栏 (36) 3.4主对象树介绍 (37) 3.4.1Transformation的主对象树 (37) 3.4.2Jobs主对象树 (51) 3.5核心对象介绍 (58) 3.5.1Transformation核心对象 (58) 3.5.2Jobs核心对象 (219) 3.6 transformation功能 (280) 3.7 Jobs功能 (281) 4 Kettle 优点 (281) 5 Kettle 缺点 (281)

1.Kettle简介 简单地说,Kettle 就是国外一个开源的ETL工具。其主要功能就是对源数据进行抽取、转换、装入和加载数据。也就是将源数据整合为目标数据。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 Spoon 是一个图形用户界面,它允许运行转换或者任务,其中转换是用pan工具来运行,任务是用Kitchen来运行。Pan 是一个数据转换引擎,它可以执行很多功能。例如从不同的数据源读取、操作和写入数据。Kitchen 是一个可以运行利用xml或数据资源库描述的任务,通常任务是在规定的时间间隔内用批处理的模式自动运行。 Kettle主要包括以下三大块: 一、Spoon——转换/工作(transform/job)设计工具(GUI方式); 二、Kitchen——工作(job)执行器(命令行方式) ; 三、Span——转换(trasform)执行器(命令行方式)。 2.Kettle 的安装 首先,必须先安装Sun 公司的JAVA 运行环境1.4以上的版本(包括1.4),并配置好环境变量;

Kettle5.x使用步骤带案例超详细版精编版

Kettle使用方法介绍 1、Kettle概念 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix 上运行,绿色无需安装,数据抽取高效稳定。 Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。 Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。 Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 2、下载和部署 下载kettle压缩包,因kettle为绿色软件,解压缩到任意本地路径即可 3、Kettle环境配置 1.安装JDK(略) 2.测试JDK安装成功(略) 3.运行Kettle Windows下找到$KETTLE_HOME/spoon.dat,双击运行 欢迎界面如下图所示:

4、KETTLE组件介绍与使用 4.1 Kettle使用 Kettle提供了资源库的方式来整合所有的工作,; 1)创建一个新的transformation,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为Trans,kettle默认transformation文件保存后后缀名为ktr; 2)创建一个新的job,点击保存到本地路径,例如保存到D:/etltest下,保存文件名为Job,kettle默认job文件保存后后缀名为kjb; 4.2 组件树介绍 4.2.1Transformation 的主对象树和核心对象分别如下图:

ETL及kettle介绍知识讲解

E T L及k e t t l e介绍

目录 1. ETL知识 (3) 1.1. ETL定义 (3) 1.1.1. 定义 (3) 1.1.2. 前提 (3) 1.1.3. 原则 (3) 1.2. 模式及比较 (4) 1.3. ETL过程 (7) 1.3.1. 总流程 (7) 1.3.2. 数据抽取流程 (8) 1.3.3. 数据清洗流程 (8) 1.3.4. 数据转换流程 (10) 1.3.5. 数据加载流程 (11) 1.4. 问题分析 (12) 1.4.1. 字符集问题 (12) 1.4.2. 缓慢变化维处理 (13) 1.4.3. 增量、实时同步的处理 (13) 1.4.4. 断点续传 (14) 1.5. ETL工具 (14) 2. Kettle简介及使用 (15) 2.1. 什么Kettle? (15) 2.2. 下载及安装Kettle (15) 2.3. Kettle简单例子 (17) 2.3.1. 启动Kettle (17) 2.3.2. 创建transformation过程 (18) 2.3.3. 创建job过程 (38) 2.3.4. 命令行运行ktr和kjb (42)

1.ETL知识 1.1.ETL定义 1.1.1.定义 ●定义: 数据的抽取(Extract)、转换(Transform)、装载(Load)的过程。 ●目标: 数据优化。以最小代价(包括对日常操作的影响和对技能的要求) 将针对日常业务操作的数据转化为针对数据仓库而存储的决策支持型数据。 1.1. 2.前提 ●确定ETL范围 通过对目标表信息的收集,确定ETL的范围 ●选择ETL工具 考虑资金 运行的平台、对源和目标的支持程度、可编程的灵活性、对源数据变化的监测、数据处理时间的控制、管理和调度功能、对异常情况的处理 ●确定解决方案 抽取分析、变化数据的捕获、目标表的刷新策略、数据的转换及数据验证 1.1.3.原则 ●应尽量利用数据中转区对运营数据进行预处理。保证数据的安全性、集 成与加载的高效性。 ●ETL的过程应是主动“拉取”,而不是从内部“推送”,其可控性将大 为增强。 ●流程化的配置管理和标准协议 ●数据质量的保证 正确性(Accuracy):数据是否正确体现在现实或可证实的来源 完整性(Integrity):数据之间的参照完整性是否存在或一致

ETL利器KETTLE实战应用解析系列一 KETTLE使用介绍

ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少,这里我介绍一个我在工作中使用了3年左右的ETL工具Kettle,本着好东西不独享的想法,跟大家分享碰撞交流一下!在使用中我感觉这个工具真的很强大,支持图形化的GUI 设计界面,然后可以以工作流的形式流转,在做一些简单或复杂的数据抽取、质量检测、数据清洗、数据转换、数据过滤等方面有着比较稳定的表现,其中最主要的我们通过熟练的应用它,减少了非常多的研发工作量,提高了我们的工作效率,不过对于我这个.net研发者来说唯一的遗憾就是这个工具是Java编写的。 1、Kettle概念 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。 Kettle中文名称叫水壶,该项目的主程序员MATT希望把各种数据放到一个壶里,然后以一种指定的格式流出。 Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。 Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 2、下载和部署 Kettle可以在https://www.360docs.net/doc/ce7919617.html,/网站下载 下载kettle压缩包,因kettle为绿色软件,解压缩到任意本地路径即可 3、Kettle环境配置(有Java环境的直接忽略此章节) 3、1安装java JDK 1)首先到官网上下载对应JDK包,JDK1.5或以上版本就行; 2)安装JDK; 3)配置环境变量,附配置方式:

bat脚本调用kettle

Kettle学习文档1 Kettle 的定时任务可以用kettle中的job工作来定时转换,也可以使用bat脚本来启动kettle的‘.ktr’转换。 Bat脚本可在Windows上直接双击运行;也可以在‘计算机管理-->任务计划程序’中添加,并定时启动;还可以在Windows点击运行,输入cmd,在dos窗口输入命令启动。在Linux环境下启动转换的方法与Windows上差不多,所以并未多做实验。 1、新建文档,保存格式为‘name.bat’,bat脚本: d: cd D:\hgy\pdi-ce-7.0.0.0-25\data-integration pan /file D:\hgy\learn\kettle\kettle_files\test_learn1.ktr /level Basic>>D:\hgy\kettle.log 脚本解释:‘d:’是进去d盘下,‘cd’打开kettle解压的文件夹下pan所在目录,命令‘pan’启动‘.ktr’转换文件;‘pan’是启动‘.ktr’文件, ‘kitchen’是启动‘.kjb’文件。 ‘D:\hgy\kettle.log’是将日志写入这个文档。 ‘pan’或‘kitchen’后面可跟参数含义:

而参数后面可以是=也可以是:也可以是空格 kitchen.bat /file d:\ 或者-file=D:\ 或者/file:D:\等等都可以2、在dos窗口调用时,就将1中的bat文件一行一行输入。 3、任务计划程序启动

右键任务计划程序,创建基本任务:

测试时可以直接点旁边的运行:

然后可以再日志里面看到: 附:

kettle工具使用文档

目录 1. Kettle工具的组成 (2) 2. kettle工具的运行 (2) 3. 资源库的设置 (3) 4. 转换的创建与使用 (8) 4.1 创建一个新的装换 (8) 4.2 DataGird (9) 4.3 Write to log控件 (10) 4.4 表输入控件 (13) 4.5 字段选择控件 (14) 4.6 表输出控件 (15) 4.7 插入/更新控件 (17) 4.8 转换中变量的设置 (18) 4.9变量的使用 (19) 4.10 步骤的错误处理 (19) 4.11 flow控件的使用 (20) 4.11.1 Switch/Case控件 (20) 4.11.2 Blocking Step控件 (21) 4.11.3 Indentify last row in a stream控件 (22) 4.11.4 过滤记录控件 (23) 4.11.5 空操作控件 (23) 4.11.6 Abort控件 (24) 5. 作业(job)的创建及使用 (24) 5.1 创建一个新的作业 (24) 5.2 START控件 (25) 5.3 Success控件 (25) 5.4 Transformation控件 (25) 5.5 变量设置 (26) 5.6 Js脚本使用 (27) 5.7 空操作控件 (27)

1.Kettle工具的组成 Kettle主要由资源库、数据库、作业(job)、转换、步骤五部分组成,资源库是用来存储用户所编写的作业和转换(即kjb文件和ktr文件),一般是在数据库中存储,方便用户的查找和使用。数据库就是处理数据是需要的数据库。作业是用来确定一个工程中需要使用的转换和转换的执行顺序。转换是数据在ktr文件中的具体转换过程,类似于Java的一个方法,而作业就类似于java的一个类,它可以调用各种不同的方法(转换)。 步骤是kettle最小的执行单位。 2.kettle工具的运行 1)在电脑中安装jdk并配置java运行环境(jdk版本建议是1.6或以上版本) 2)Kettle工具的下载:可以在https://www.360docs.net/doc/ce7919617.html,中下载最新的版本,此文档所 使用的是kettel-4.1.0的版本 3)Kettle工具的运行: 在Windows系统下运行,只需要解压kettle文件后,双击data-integration文件夹中的Spoon.bat文件

Kettle的使用说明

KETTLE使用说明 简介 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。 Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。 Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。 Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。 Kettle可以在https://www.360docs.net/doc/ce7919617.html,/网站下载到。 注:ETL,是英文Extract-Transform-Load 的缩写,用来描述将数据从来源端经过萃取(extract)、转置(transform)、加载(load)至目的端的过程。ETL 一词较常用在数据仓库,但其对象并不限于数据仓库。 下载和安装 首先,需要下载开源免费的pdi-ce软件压缩包,当前最新版本为5.20.0。 下载网址:https://www.360docs.net/doc/ce7919617.html,/projects/pentaho/files/Data%20Integration/然后,解压下载的软件压缩包:pdi-ce-5.2.0.0-209.zip,解压后会在当前目录下上传一个目录,名为data-integration。 由于Kettle是使用Java开发的,所以系统环境需要安装并且配置好JDK。 ?Kettle可以在https://www.360docs.net/doc/ce7919617.html,/网站下载 ? 下载kettle压缩包,因kettle为绿色软件,解压缩到任意本地路径即可。运行Kettle 进入到Kettle目录,如果Kettle部署在windows环境下,双击运行spoon.bat 或Kettle.exe文件。Linux用户需要运行spoon.sh文件,进入到Shell提示行窗口,进入到解压目录中执行下面的命令: # chmod +x spoon.sh # nohup ./spoon.sh & 后台运行脚本 这样就可以打开配置Kettle脚本的UI界面。

Kettle产品家族介绍

Kettle产品家族介绍 KETTLE是一个ETL工具集,它允许你管理来自不同数据库的数据。Kettle通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。工作被描述成元数据形式。 在软件设计进化的过程里,存在着4代生成方式。 第一代—手工编程: 大量的工作,难以维护,难以发布 第二代: 生成一次, 然后修改来满足需求: 容易生成, 仍然难以维护和发布. 第三代: 从模型生成程序: 易于生成,易于维护,但仍然难以维护. 第四代: 从模型直接执行任务: 易于生成,易于发布,易于维护。这正是Kettle所使用。 Kettle家族目前包括4个产品:Spoon、Pan、CHEF、Kitchen。 SPOON 允许你通过图形界面来设计ETTL转换过程(Transformation)。例如,从一个SAP系统抽取信息,并把这些信息存储到一个文本文件里的转换任务如下: For more information on Spoon, please check out the Spoon documentation (PDF link). PAN 允许你批量运行由Spoon设计的ETL转换(例如使用一个时间调度器)。Pan 是一个后台执行的程序,没有图形界面。想要详细了解Pan,请查看Pan documentation (PDF link). CHEF 允许你创建任务(Job)。任务通过允许每个转换,任务,脚本等等,更有利于自动化更新数据仓库的复杂工作。任务通过允许每个转换,任务,脚本等等。任务将会被检查,看看是否正确地运行了。(下面是一个Chef的任务图)

KITCHEN allows you to run the jobs designed with Chef in batch. (for example using a scheduler) Job与Transformation的差别是:Transformation专注于数据的ETL,而Job的范围比较广,可以是Transformation,也可以是Mail、SQL、Shell、FTP等等,甚至可以是另外一个Job。 KITCHEN 允许你批量使用由Chef设计的任务(例如使用一个时间调度器)。KITCHEN也是一个后台运行的程序。

ETL工具Kettle用户手册及Kettle5.x使用步骤带案例超详细版教学文稿

E T L工具K e t t l e用户手册及K e t t l e5.x 使用步骤带案例超详 细版

ETL工具Kettle用户手册 之 Spoon 2.5.0用户手册 ETL工具Kettle用户手册 (2) 之 (2) Spoon 2.5.0用户手册 (2) 1、Spoon介绍 (21) 1、1什么是Spoon (21) 1、2安装 (22) 1、3运行Spoon (22) 1、4资源库 (22) 1、5资源库自动登录 (23) 1、6定义 (23) 1、6、1转换 (23) 1、6、2任务 (24) 1、7工具栏 (25) 1、8选项 (25) 1、8、1 General标签 (26) 1、8、2 Look Feel标签 (27) 1、9搜索元数据 (28) 1、10设置环境变量 (29) 2、创建一个转换或任务(Creating a Transformation or Job) (29) 3、数据库连接(Database Connections) (30) 3、1描述 (30) 3、2 设置窗口 (31) 3、3选项 (31) 3、4数据库用法 (31) 4、SQL编辑器(SQL Editor) (32) 4、1描述 (32) 4、2屏幕截图 (33) 4、3局限性 (33) 5、数据库浏览器(Database Explorer) (33) 5、1屏幕截图 (33) 5、2描述 (34)

6、节点连接(Hops) (35) 6、1描述 (35) 6、1、1转换连接 (35) 6、1、2任务连接 (35) 6、2屏幕截图 (35) 6、3创建一个连接 (36) 6、4拆分一个连接 (36) 6、5转换连接颜色 (36) 7、变量(Variables) (37) 7、1变量使用 (37) 7、2变量范围 (37) 7、2、1环境变量 (37) 7、2、2 Kettle变量 (38) 7、2、3内部变量 (38) 8、转换设置(Transformation Settings) (38) 8、1描述 (38) 8、2屏幕截图 (39) 8、3选项 (42) 8、4其它 (43) 9、转换步骤(Transformation steps) (43) 9、1描述 (43) 9、2运行步骤的多个副本 (44) 9、3分发或者复制 (45) 9、4常用错误处理 (46) 9、5Apache虚拟文件系统(VFS)支持 (47) 9、6转换步骤类型 (49) 9、6、1文本文件输入(Text Input) (49) 9、6、1、1屏幕截图 (49) 9、6、1、2图标 (51) 9、6、1、3常用描述 (52) 9、6、1、4选项 (52) 9、6、1、5格式化 (58) 9、6、1、6其它 (60) 9、6、2表输入(Table Input) (61) 9、6、2、1屏幕截图 (61) 9、6、2、2图标 (61) 9、6、2、3常用描述 (61) 9、6、2、4选项 (62) 9、6、2、5示例 (62) 9、6、2、6其它 (63) 9、6、3获取系统信息(Get System Info) (64) 9、6、3、1屏幕截图 (64) 9、6、3、2图标 (65) 9、6、3、3常用描述 (65)

相关主题
相关文档
最新文档