KETTLE详细设计说明
kettle资源库表结构说明
kettle资源库表结构说明Kettle资源库表结构说明Kettle是一种开源的ETL(Extract, Transform, Load)工具,用于数据集成和数据转换。
在Kettle中,资源库(Repository)是一个数据库,用于存储和管理Kettle的各种元数据信息。
资源库表结构是资源库中存储这些元数据信息的表的结构,本文将对Kettle资源库表结构进行详细说明。
1. R_DATABASE表R_DATABASE表用于存储Kettle中的数据库连接信息。
该表包含以下字段:- ID:数据库连接的唯一标识符。
- NAME:数据库连接的名称。
- TYPE:数据库类型,如MySQL、Oracle等。
- ACCESS:数据库访问类型,如JNDI、ODBC等。
- HOST_NAME:数据库服务器的主机名。
- DATABASE_NAME:数据库名称。
- PORT:数据库服务器的端口号。
- USERNAME:数据库的用户名。
- PASSWORD:数据库的密码。
2. R_REPOSITORY表R_REPOSITORY表用于存储资源库的信息。
该表包含以下字段:- ID_REPOSITORY:资源库的唯一标识符。
- NAME:资源库的名称。
- DESCRIPTION:资源库的描述信息。
- BASE_DIRECTORY:资源库的基础目录。
3. R_TRANSFORMATION表R_TRANSFORMATION表用于存储转换(Transformation)的信息。
转换是Kettle中的基本单位,用于定义数据的抽取、转换和加载过程。
该表包含以下字段:- ID_TRANSFORMATION:转换的唯一标识符。
- NAME:转换的名称。
- DESCRIPTION:转换的描述信息。
- EXTENDED_DESCRIPTION:转换的扩展描述信息。
- TRANS_VERSION:转换的版本号。
- TRANS_STATUS:转换的状态。
kettle etl设计方案
kettle etl设计方案1. 引言Kettle是一款强大的ETL(Extract, Transform, Load)工具,可以帮助用户实现数据的抽取、转换和加载。
本文档旨在介绍Kettle的设计方案,包括架构设计、任务调度、数据传输等重要内容。
2. 架构设计Kettle的架构由三个主要组件组成:Spoon、Pan和Kitchen。
•Spoon:是Kettle的图形用户界面工具,用于创建和编辑Kettle的转换和作业。
•Pan:是一个命令行工具,用于在命令行模式下执行Kettle的转换和作业。
•Kitchen:也是一个命令行工具,用于在命令行模式下执行Kettle的作业,和Pan相比,Kitchen可以更好地管理和监控作业的执行过程。
Kettle的架构还包括一个元数据数据库,用于存储转换和作业的定义、日志、错误信息等。
3. 任务调度Kettle提供了多种任务调度的方式,可以根据实际需求选择合适的方式。
3.1 定时任务调度Kettle可以通过定时任务调度器(例如Quartz)实现定时执行转换和作业。
用户可以配置任务的执行时间、频率和参数等信息,实现自动化的数据处理。
3.2 事件触发任务调度Kettle还支持通过事件触发的任务调度。
用户可以定义一个事件,当满足特定条件时触发任务的执行。
例如,可以设置一个文件变化的事件,当指定的文件发生变化时,触发转换或作业的执行。
4. 数据传输Kettle支持多种数据传输方式,可以方便地从源数据源中抽取数据、进行转换,并加载到目标数据源中。
4.1 数据抽取Kettle可以从各种关系型数据库、文件系统、Web服务等数据源中抽取数据。
用户可以通过Kettle提供的数据抽取组件,配置数据源的连接信息、查询语句等参数,实现数据的快速抽取。
4.2 数据转换Kettle的转换组件提供了丰富的数据转换功能,包括数据清洗、数据过滤、字段映射、数据计算等操作。
用户可以通过拖拽转换组件并连接它们,定义数据的转换逻辑和处理流程。
kettle源码解读
kettle源码解读(原创版)目录1.Kettle 简介2.Kettle 的架构和核心组件3.Kettle 的数据存储和处理4.Kettle 的任务和作业5.Kettle 的性能优化和扩展性6.总结正文1.Kettle 简介Kettle 是一款开源的 ETL 工具,其主要功能是帮助数据管理员和开发人员将数据从一个数据源迁移到另一个数据源。
Kettle 可以处理各种类型的数据源,包括数据库、文件系统和数据仓库等。
它具有强大的数据转换和数据处理能力,可以帮助用户完成复杂的数据集成任务。
2.Kettle 的架构和核心组件Kettle 的架构主要由四个核心组件组成,分别是:资源管理器、转换引擎、步骤管理和仓库管理。
资源管理器负责管理所有的资源,包括数据源、目标数据存储和转换步骤等。
转换引擎负责执行具体的数据转换任务,包括数据抽取、数据转换和数据加载等。
步骤管理器负责管理所有的ETL 步骤,包括数据的输入、输出和转换等。
仓库管理器负责管理所有的数据仓库,包括数据的存储和查询等。
3.Kettle 的数据存储和处理Kettle 支持各种类型的数据存储和处理,包括关系型数据库、对象数据库、文件系统和数据仓库等。
用户可以根据具体的需求选择不同的数据存储和处理方式。
Kettle 提供了强大的数据转换功能,可以实现各种类型的数据转换,包括数据清洗、数据聚合和数据分组等。
4.Kettle 的任务和作业Kettle 的任务和作业是其核心功能之一。
任务是指一个具体的数据处理任务,例如数据抽取、数据转换或数据加载等。
作业是指一个完整的数据处理过程,包括多个任务的组合和调度等。
用户可以根据具体的需求创建和管理任务和作业,以实现复杂的数据处理任务。
5.Kettle 的性能优化和扩展性Kettle 提供了一系列的性能优化和扩展性功能,包括数据缓存、并行处理和分布式处理等。
数据缓存可以有效地减少数据访问的时间,提高数据处理的速度。
并行处理可以充分利用计算机的多核处理能力,提高数据处理的效率。
KETTLE详细设计
KETTLE详细设计KETTLE是一种用于提供数据集成、转换和加载功能的开源工具,经常用于数据仓库、数据集市和ETL(抽取、转换和加载)过程。
它提供了图形用户界面,允许用户通过拖放操作来定义数据集成任务,并提供了强大的数据处理功能和可扩展的插件机制。
以下是KETTLE的详细设计,包括架构、核心模块和主要功能。
1.架构- Spoon:用于设计和配置任务的图形界面工具。
- Kitchen:用于以命令行方式执行任务。
- Pan:用于批量执行任务。
这些模块可以独立运行,也可以通过调用KETTLE的API进行集成。
2.核心模块-元数据存储:用于保存任务和转换的定义和配置信息,支持多种数据库和文件格式。
-作业管理器:用于管理任务和转换的执行,包括执行控制、错误处理和监控。
-转换引擎:用于执行数据转换和操作,支持各种数据处理任务,如数据筛选、合并、变换和聚合。
-数据加载:用于向目标系统加载转换后的数据。
3.主要功能-数据连接和访问:支持多种数据源和文件格式,包括关系数据库、文件、XML、JSON等。
可以通过定义连接和查询来访问数据源。
-数据转换和操作:提供了丰富的数据转换和操作功能,如数据筛选、排序、合并、分割、变换、聚合等。
可以通过拖放操作来定义转换和操作的步骤和顺序。
-错误处理和监控:提供了强大的错误处理和监控机制,可以捕获和处理数据转换过程中的错误和异常。
还可以定义报警和日志输出,以便及时发现和解决问题。
-调度和批量执行:支持任务的调度和批量执行,可以定义作业流并规定作业的执行顺序和依赖关系。
支持并行执行和资源调度,以提高任务的执行效率。
-插件机制和扩展性:提供了可扩展的插件机制,允许用户根据需求开发自定义插件并集成到KETTLE中。
还提供了丰富的内置插件,包括数据转换、文件处理、数据库操作等。
总结:KETTLE是一种功能强大的数据集成、转换和加载工具,具有丰富的功能和灵活的架构。
它通过图形用户界面和拖放操作提供了可视化的数据处理方式,使得任务的设计和配置变得简单和直观。
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进行相关的操作,如:新建、打开、保存、导入、导出等相关操作。
(图1.6)说明:编辑:是对Kettle当前打开的Job与Trans进行相关的操作,如:复制、撤销、环境变量显示、资源库查看、图形界面自定义调整(颜色、字体、样式)等相关操作。
(图1.7)说明:视图:是对Kettle当前打开的Job与Trans进行放大、缩小相关操作。
Kettle产品详细介绍
晴天云目录Kettle产品详细介绍简介简单地说,Kettle 就是国外一个开源的ETL工具。
其主要功能就是对源数据进行抽取、转换、装入和加载数据。
也就是将源数据整合为目标数据。
Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。
Spoon 是一个图形用户界面,它允许运行转换或者任务,其中转换是用pan工具来运行,任务是用Kitchen来运行。
Pan 是一个数据转换引擎,它可以执行很多功能。
例如从不同的数据源读取、操作和写入数据。
Kitchen 是一个可以运行利用xml或数据资源库描述的任务,通常任务是在规定的时间间隔内用批处理的模式自动运行。
Kettle主要包括以下三大块:一、Spoon——转换/工作(transform/job)设计工具(GUI方式);二、Kitchen——工作(job)执行器(命令行方式) ;三、Span——转换(trasform)执行器(命令行方式)。
的安装首先,必须先安装Sun 公司的JAVA 运行环境以上的版本(包括),并配置好环境变量;然后,将下载的Kettle软件解压到目标目录,就可以看到Kettle的启动文件或;最后,运行启动文件。
Windows 平台的启动:双击。
Linux 平台的启动:双击。
的详细介绍资源库管理登陆时可以选择”没有资源库”即可进入Kettle,此时所定义的转换和工作将只能存储在本地磁盘上,以.ktr文件和.kjb文件的方式。
若使用资源库登录,则所有定义的转换和工作将会存储到资源库里。
实际上,资源库就是一个数据库,比如SQL SERVER数据库,里面存储了Kettle定义的元素的相关元数据,简单而言,就是元数据库。
如果资源库创建完毕,则资源库的相关信息将存储在文件“”中,它位于你的缺省home 目录的隐藏目录“.kettle”中。
如果是windows 系统,这个路径就是c:\Documents andSettings\<username>\.kettle。
Kettle5.某使用步骤带案例解析详细版
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运行 KettleWindows 下找到 $KETTLE_HOME/spoon.dat,双击运行I 二 set-pentaho-en 认bat set- pentaho-env.Snh [丄 Spoon.bats'poon.^oimmand £p oon.icoL tnnnn nnn欢迎界面如下图所示:Pentaho Data IntegrationI Avlability5,1 A QrZ|2314 =1 Jhg 打APiit 、Allriotzi 13»工=- ■绝 mEP on I □ ji-* ' nMn":ITU ra jK azcp 更1b PF SH I" w Z I -Sfi 俺 论 峠 -I JI■tzjL -Td3 0 All hrt t # 冲 Qgiw r 淖恤 Jj 疔李 if A M "AS I 貧 E 3 515- .Mi hkj^T iAAj=»4hr OH COM : IlChS L- H ^4:, T -r-w VESWI ET IE — = ir«U4n ■忻 k- biTfc.irz -sirf经: 大小: 修改【◎ p entaho4、KETTLES 件介绍与使用4.1 Kettle 使用Kettle 提供了资源库的方式来整合所有的工作,;1) 创建一个新的transformation ,点击 保存到本地路径,例如保存到D:/etltest 下,保存文件名为Trans , kettle 默认transformation 文件保存后后缀名为ktr ;2) 创建一个新的job ,点击 保存到本地路径,例如保存到D:/etltest 下,保存文件名为Job , kettle 默认job 文件保存后后缀名为kjb ;4.2组件树介绍4.2.仃ransformation 的主对象树和核心对象分别如下图: 面主櫥^ /核心饶I浏览贞主对象I 对、/核心对象 _____________|Sl ^'1卜 Q InputP S 输入」匕转换丿黒 db2excel-e DBiggC database2exceE丿□ Steps (步藝I”脚吧{;「ipt 代码“山询Script 代码2 钊 MicrosoftExcel 输出 且 datasource 氐获®:義统信息 吐获耽系统信息2 »设1变量 豊iSg 变量2丄□ Hops (行点连接)*■ datasource -> Microsoft Excel 帛…获取義统信息-> J 旳話cript 代码[(!J 卵日攵「ipt 代码*■> {^置变量(disaL "获取寮読信皂2 -> JavaScriptf^fi^4 JavaScript^® 2 —> 设嬰变呈 2 (启 □数据库分区Hhwrnas u 子服务器 Q KettleMIrSiChemasQ 輸出Q 转换 Q 应用 三流程 B 脚本e 查询S 连接e 姻仓阵Q 检验 S 统计Q Big Data 巴 Agile a 加密eG a s QaPaloOpenERP 作业批量加载 内联Q 实验 a 不推荐的 s厉史■戸柞业』C db2e)ccel 星已DE 连接b ,6作业项目► START寶转换 □魁邮件✓ On 瀏坟件到结果文件中e 子服务器STARTDUIM MV作业><转授由呂件 文件管理条1牛 脚本批豈创信Big Data XML应用 贵源/车P r 文件传输 f 严文件加匣;* t一) PaloQ Depre 匚atcd可以通过各个节点来查看。
kettle课程设计
kettle课程设计一、课程目标知识目标:1. 学生能理解Kettle的基本概念,掌握其功能特点及操作流程。
2. 学生能运用Kettle完成数据的抽取、转换和加载操作。
3. 学生能掌握Kettle中常见的数据转换组件及其使用方法。
技能目标:1. 学生能独立安装和配置Kettle软件。
2. 学生具备使用Kettle进行数据处理和分析的能力。
3. 学生能运用Kettle解决实际问题,提高数据处理效率。
情感态度价值观目标:1. 培养学生对数据处理的兴趣,激发学习动力。
2. 培养学生团队协作、共同解决问题的能力,增强合作意识。
3. 培养学生勇于探索、积极进取的精神,树立正确的数据价值观。
课程性质:本课程为实践性课程,以学生动手操作为主,结合理论知识讲解。
学生特点:学生具备一定的计算机操作基础,对数据处理有一定的了解,但Kettle使用经验较少。
教学要求:教师需关注学生个体差异,因材施教,注重培养学生的实际操作能力,提高数据处理技能。
同时,注重激发学生的学习兴趣,引导他们树立正确的数据价值观。
在教学过程中,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。
二、教学内容本课程教学内容主要包括以下几部分:1. Kettle概述:介绍Kettle的基本概念、功能特点、应用场景及发展历程。
2. Kettle安装与配置:讲解Kettle软件的安装步骤、环境配置及基本操作界面。
3. 数据抽取、转换和加载:学习Kettle中ETL过程的实现方法,包括数据连接、数据抽取、数据转换和数据加载等。
4. 常见数据转换组件:介绍Kettle中常用的数据转换组件,如过滤、排序、合并、拆分、聚合等,并讲解其使用方法。
5. Kettle实战案例:结合实际案例,让学生动手操作Kettle,完成数据处理任务。
6. 课程总结与拓展:总结本课程所学内容,引导学生探索Kettle的进阶功能,激发学生的学习兴趣。
教学内容安排如下:第1周:Kettle概述及安装配置第2周:数据抽取、转换和加载基础第3周:常见数据转换组件及其使用方法第4周:Kettle实战案例分析与操作第5周:课程总结与拓展教材章节关联:第1章:Kettle概述及安装配置第2章:数据抽取、转换和加载基础第3章:Kettle数据转换组件第4章:Kettle实战案例第5章:课程总结与拓展教学内容科学系统,注重理论与实践相结合,旨在提高学生的数据处理技能和实际操作能力。
kettle简介(整体架构,运行方式,使用方法)
kettle简介(整体架构,运⾏⽅式,使⽤⽅法)项⽬负责⼈Matt的说法:把各种数据放到⼀个壶⾥,然后呢,以⼀种你希望的格式流出。
呵呵,外国⼈都很有联想⼒。
看了提供的⽂档,然后对发布程序的简单试⽤后,可以很清楚得看到Kettle的四⼤块:Chef——⼯作(job)设计⼯具 (GUI⽅式)Kitchen——⼯作(job)执⾏器 (命令⾏⽅式)Spoon——转换(transform)设计⼯具(GUI⽅式)pan——转换(trasform)执⾏器(命令⾏⽅式)嗯,厨师已经在厨房⾥,勺⼦和盘⼦⼀应俱全,且看能做出如何的⼤餐?⼀:Chef——⼯作(job)设计器这是⼀个GUI⼯具,操作⽅式主要通过拖拖拉拉,勿庸多⾔,⼀看就会。
何谓⼯作?多个作业项,按特定的⼯作流串联起来,开成⼀项⼯作。
正如:我的⼯作是软件开发。
我的作业项是:设计、编码、测试!先设计,如果成功,则编码,否则继续设计,编码完成则开始设计,周⽽复始,作业完成。
来,看看Chef中的作业项:1.1:转换:指定更细的转换任务,通过Spoon⽣成。
通过Field来输⼊参数。
1.2: SQL:sql语句执⾏,1.3: FTP:下载ftp⽂件。
1.4:邮件:发送邮件。
1.5:检查表是否存在,1.6:检查⽂件是否存在,1.7:执⾏shell脚本。
如:dos命令。
1.8:批处理。
(注意:windows批处理不能有输出到控制台)。
1.9: Job包。
作为嵌套作业使⽤。
1.10:JavaScript执⾏。
这个⽐较有意思,我看了⼀下源码,如果你有⾃已的Script引擎,可以很⽅便的替换成⾃定义Script,来扩充其功能。
1.11:SFTP:安全的Ftp协议传输。
1.12:HTTP⽅式的上/下传。
好了,看看⼯作流:如上⽂所述,⼯作流是作业项的连接⽅式。
分为三种:⽆条件,成功,失败。
这个没啥好说的,从名字就能知道它的意图。
嗯,为了⽅便⼯作流使⽤,提供了⼏个辅助结点单元(你也可将其作为简单的作业项):1:Start单元,任务必须由此开始。
KETTLE详细设计
KETTLE详细设计说明书V0.1变更记录1 Kettle界面介绍双击Kettle.exe或者Spoon.bat打开Kettle图形界面化如下:1.1)(图Kettle完成针对数据的,Transformation(转换)与Job(作业)中有两类设计分别是:Transformation则完成整个工作流的控制。
基础转换,Job。
、KitchenSpoonKettle常用三大家族:、Pan: Transformation。
Spoon通过图形界面方式设计、运行、调试Job与:。
通过脚本命令方式来运行TransformationPan:脚本来完成定时任务。
Kitchen 通过脚本命令方式来运行Job,一般就是通过调用Kitchen说明:相关协议说明。
GNU的相关版本信息与Kettle时显示的是Kettle当打开.1.2)(图关于乌江水电项目工程存Kettle时弹出的窗口提示以资源库方式登录相关信息,明:打开说。
“没有资源库”储方式是以XML文件方式来进行存储,所以我就直接点击(1.3)图按钮。
”关闭“相关信息,这里直接点击Spoon设计界面。
提示关于Kettle进入说明:图1.4)( 图片中所使用到的字母位置标识说明。
说明:所使用到的菜单栏。
(A):Kettle 时所涉及使用到的对象。
:在使用Kettle(B) Kettle中所有的组件。
:(C)显示相应的结果。
(C)或者D):根据选择(B)(设计界面。
:Kettle(E)1.5)(图说明:进行相关的操作,如:新建、打开、保存、导入、Trans与Job所生成的Kettle文件:是对.导出等相关操作。
1.6)(图说明:进行相关的操作,如:复制、撤销、环境变量显与Trans编辑:是对Kettle当前打开的Job 等相关操作。
(颜色、字体、样式)示、资源库查看、图形界面自定义调整1.7)(图说明:进行放大、缩小相关操作。
Trans与Job当前打开的Kettle视图:是对.1.8)图( 说明:中所使用到的资源库进行操作,如:资源库连接、断开、当前用户编辑Kettle资源库:是对等操作。
KETTLE使用说明(中文版)
5.4 输出:插入/更新
插入/更新:若流里的数据在目标表中不存在,执行插入,否则执行更新, 数据量不大的情况下,一般采用插入/更新操作。
5.5 输出:更新
这个步骤类似于插入/更新步骤,除了对数据不作插入操作之外。它仅仅 执行更新操作。
5.6 输出:删除
这个步骤类似于更新步骤,除了不更新操作之外,其他的行均被删除。
选择表输入, excel 输出,建立节点 连接。右击连接线,可编辑连线属 性。
5.1常用输入:
表输入 Excel 输入 文本文件输入 XML 文件输入 CUBE 输入(多维数据集) 获取系统信息
5.2输入:表输入
选择表输入,点击鼠标右键,选择编辑步骤。 步骤名称可以更改,一般更改为和输入表相关的名称。 数据库连接 : 选择一个已建好的数据库连接,也可以新建一个。 点击”获取SQL查询语句”,可弹出数据库浏览器,选择自己需要的表或视图。 选择好表或视图后,SQL 区域会显示相应的SQL,如选择在SQL里包含字段名,你 所选择的表的所有字段均会显示. 在SQL区域用户可手动修改SQL语句。
7.3 Flow :Blocking Step(被冻结的步骤)
这是一个非常简单的步骤,它冻结所有的输出,直到从上一个步骤来的最后一行 数据到达,最后 一行数据将发送到下一步。 你可以使用这个步骤触发常用插件、 存储过程和js等等。
8.0 连接 :Merge Join(合并排序)
这个步骤将来自两个不同的步骤输 入的数据执行一个高效的合并。合 并选项包括INNER ,LEFT OUTER , RIGHT OUTER, FULL OUTER. 这个步骤将输入的行按照指定的字 段存储 被合并的两个步骤,必须按照相同 的段进行排序。
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进行相关的操作,如:新建、打开、保存、导入、导出等相关操作。
(图1.6)说明:编辑:是对Kettle当前打开的Job与Trans进行相关的操作,如:复制、撤销、环境变量显示、资源库查看、图形界面自定义调整(颜色、字体、样式)等相关操作。
(图1.7)说明:视图:是对Kettle当前打开的Job与Trans进行放大、缩小相关操作。
(图1.8)说明:资源库:是对Kettle中所使用到的资源库进行操作,如:资源库连接、断开、当前用户编辑等操作。
kettle etl设计方案
kettle etl设计方案ETL(Extract-Transform-Load)是数据仓库中实现数据抽取、转换和加载的一种常见方法。
下面是针对Kettle ETL工具的设计方案。
设计思路:1. 确定需求:明确ETL的目标,需要从哪些数据源抽取数据,如何进行转换,以及将数据加载到何处。
2. 确定数据源:分析数据源的类型(数据库、文件、API等)以及获取数据的方式。
3. 抽取数据:使用Kettle提供的组件(如Table input、File input等)连接到数据源,执行抽取操作并将数据存储在内存中。
4. 数据转换:利用Kettle的转换组件(如Filter rows、Sort rows等)对抽取的数据进行清洗、组合、转换等操作,根据需求生成目标数据。
5. 数据加载:使用Kettle的加载组件(如Table output、File output等)将转换后的数据写入到目标数据存储中,如数据库、文件等。
6. 编辑脚本:利用Kettle提供的脚本编辑器,可以对ETL过程进行自定义脚本开发,实现更加复杂的业务逻辑需求。
7. 调度任务:配置Kettle的调度器,按照预设的时间或者事件触发,自动执行ETL任务。
具体步骤:1. 下载安装Kettle工具,配置相应的数据库驱动和插件。
2. 创建一个新的Trans(转换)任务,在任务中建立数据源连接和目标数据存储的连接。
3. 在转换任务中,使用Table input组件连接到源数据库,并选择要抽取的表,定义需要抽取的字段。
4. 使用Filter rows组件对抽取的数据进行过滤,只保留满足条件的数据行。
5. 使用Sort rows组件对数据进行排序操作,如果需要按照某个字段排序。
6. 使用Table output组件连接到目标数据库,将转换后的数据写入指定的表中。
7. 定义调度任务,可以按照需求设置ETL任务的调度时间和触发事件。
8. 运行ETL任务,监控日志和报告,确保任务正常完成。
kettle原理
kettle原理Kettle原理。
Kettle是一种开源的ETL工具,ETL是Extract-Transform-Load的缩写,意为数据抽取、转换和加载。
Kettle主要用于数据仓库的建设和维护,它提供了强大的数据抽取、转换和加载功能,能够帮助用户快速、高效地实现数据的处理和分析。
Kettle原理是指Kettle工具实现数据处理的基本原理和机制,下面将详细介绍Kettle的原理。
首先,Kettle采用了元数据驱动的设计思想,即通过元数据描述数据处理的逻辑和流程。
元数据是描述数据的数据,它包括数据的结构、属性、关系、约束等信息。
在Kettle中,用户可以通过图形化界面设计数据处理的流程,包括数据抽取、转换和加载的步骤,每个步骤都可以通过元数据进行配置和定制。
这种设计思想使得Kettle具有很高的灵活性和可扩展性,用户可以根据实际需求定制和修改数据处理的流程,而不需要修改程序代码。
其次,Kettle采用了基于插件的架构,即Kettle的核心功能是由一系列插件组成的。
每个插件负责实现特定的功能,比如数据抽取、数据转换、数据加载等。
用户可以根据自己的需求选择和配置不同的插件,从而实现不同的数据处理功能。
这种架构使得Kettle具有很高的可扩展性和灵活性,用户可以根据实际需求定制和扩展Kettle的功能,而不需要修改程序代码。
另外,Kettle采用了基于元数据的数据处理引擎,即Kettle的数据处理是通过元数据驱动的。
在Kettle中,用户可以通过元数据描述数据处理的逻辑和流程,包括数据抽取、转换和加载的步骤,每个步骤都可以通过元数据进行配置和定制。
Kettle的数据处理引擎会根据元数据自动生成数据处理的代码,然后执行数据处理的流程。
这种设计思想使得Kettle具有很高的灵活性和可扩展性,用户可以根据实际需求定制和修改数据处理的流程,而不需要修改程序代码。
最后,Kettle采用了基于元数据的作业调度引擎,即Kettle的作业调度是通过元数据驱动的。
Kettle解决方案:第二章Kettle基本概念
Kettle解决⽅案:第⼆章Kettle基本概念2概述设计模块最主要的操作分为: 转换和作业选择转换和作业后就可以选择对应主对象树和核⼼对象主对象树⼤同⼩异核⼼对象是不同的⽐如转换需要⽤到的CSV表输⼊, 表输⼊等都在这⾥可以选择⽽作业的核⼼对象是:2.1 转换转换是ETL解决⽅案中最主要的部分, 它处理抽取、转换、加载各阶段各中对数据⾏的操作。
转换1/N个步骤。
如图, 下⾯是⼀个转换的过程图中每个框都是⼀个步骤(step),⽽连接框的线就是所谓的跳(hop). 跳定义了⼀个单向通道, 允许数据由⼀个通道向另⼀个通道移动。
在Kettle中数据的单位是⾏。
步骤步骤是转换的基本组成部分(图中的框框) 它有以下关键属性:1 每个步骤都有⼀个名字,在转换范围内唯⼀2 每个步骤都会读,写数据⾏ (唯⼀的例外是⽣成记录的步骤)3 步骤将数据写到与之相连的⼀个或多个输出跳, 再传送到跳的另⼀端的步骤. 对另⼀端步骤来说, 这个跳就是⼀个输⼊跳, 步骤通过输⼊跳接受数据4 ⼤多数的步骤都可以有多个输出跳.【⼀个步骤的数据发送(输出)可以设置为轮流发送和复制发送。
轮流发送是将数据⾏依次发给每⼀个输出跳(每个输出获得的输出合起来才是完整数据),复制发送是将全部数据发给所有输出跳(每个输出都⼀样,是全部的数据)。
】在创建跳的时候可以选择:5 运⾏转换时,⼀个线程运⾏⼀个步骤和步骤的多份copy,所有步骤的线程⼏乎同时运⾏,数据⾏连续地流过步骤之间的跳。
除了上⾯标准的属性,具体每个步骤根据其类型还有不同的区别。
不再赘述。
转换的跳跳(hop)就是步骤之间带箭头的连线,定义了步骤之间的数据通路。
跳实际是两个步骤之间被称为⾏集的数据⾏缓存。
当⾏集满了,向⾏集写数据的步骤将停⽌写⼊,知道⾏集⾥⼜有了空间。
当⾏集空了,从⾏集读取数据的步骤停⽌读取,直到⾏集⾥有了可读的数据⾏。
注意,跳在转换⾥不能循环。
并⾏跳的这种基于⾏集缓存的规则允许每个步骤都由⼀个独⽴的线程运⾏,这样并发程度最⾼。
Kettle开发使用手册
Kettle 开发使用手册Kettle 开发使用手册2 0 1 7 年 4 月版本历史说明版本作者日期备注1.0彭伟峰2017.04.111. Kettle 介绍1.1. 什么是 KettleKettle 是纯 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.12. Kettle 脚本开发2.1. 建立资源库( repository 仓库)Repository仓库是用来存储所有kettle文件的文件系统,由于数据交换平台服务器管理 kettle文件也是用Repository仓库,因此我们这边本地的kettle开发环境也是要用到该资源库。
建立资源库的方式是工具-->资源库- ->连接资源库,这时候弹出一个窗口,我们点击右上角的“+”号,跟着点击下面的kettlefile repository选项,按确定,如图 2.1 所示:图2.1跟着在右上角选择一个目录,建议在kettle路径下新建repository文件夹,再选择这个文件夹作为根目录,名称和描述可以任意写,如图 2.2 所示:图2.2建完后会 kettle工具会自动连接到repository资源库,每次打开kettle 也会弹出一个窗口让你先连接到资源库。
Kettle使用+说明
2014/10/06
设置和坑[1]
• 需要配置pentaho-big-data-plugin 目录中的plugin.properties文件
▫ 把active.hadoop.configuration = 的值改成 hadp20
• mysql貌似连不上,需要把mysql-connector-java-***-bin.jar 放到lib目录中
Transformation举例二:支持hive表操作
• 支持Hive的表操作,结合使用hadoop file output 可以支持从关系型 数据库向hive表中导入数据
Transformation举例三:数据同步
Hyperbase 外表
改表的列的 顺序和类型
• 支持数据更新和同步
▫ 两张表的列的顺序和数据格式必须一模一样 ▫ 注意hyperbase id 为字典序,但RDB id则不一定
combined with transactions: This status table holds for all jobs/transformations all tables that need to be in a consistent state. For all tables the last processed keys (source/target) and the status is saved. Some tables might need compound keys depending on the ER-design. It is also possible to combine this approach with the own Kettle transformation log tables and the Dates and Dependencies functionality. There is an extended example in the Pentaho Data Integration for Database Developers (PDI2000C) course in module ETL patterns (Patterns: Batching, Transaction V - Status Table) • Snapshot-Based CDC • When no suitable time stamps or IDs are available or when some records might have been updated, you need the snapshot-based approach. Store a copy of the loaded data (in a table or even a file) and compare record by record. It is possible to create a SQL statement that queries the delta or use a transformation. Kettle supports this very comfortable by the Merge rows (diff) step. There is an extended example in the Pentaho Data Integration for Database Developers (PDI2000C) course in module ETL patterns (Pattern: Change Data Capture) • Trigger-Based CDC • Kettle does not create triggers in a database system and some (or most?) people don't like the trigger-based CDC approach because it introduces a further layer of complexity into another system. Over time it is hard to maintain and keep in sync with the overall architecture. But at the end, it depends on the use case and might be needed in some projects. There are two main options: • Create a trigger and write the changed data to a separate table • This table has a time stamp or sequenced ID that can be used to select the changed data rows. • Create a trigger and call Kettle directly via the Kettle API • This scenario might be needed in real-time CDC needs, so a Kettle transformation might be called directly from the trigger. Some databases support Java calls from a trigger (e.g. PL/Java for PostgreSQL or Oracle, see References below). • If you are using Hibernate to communicate with the database, you can use Hibernate event listeners as triggers (package summary). That way it would work with every database when you use standard SQL queries or HQL queries in the triggers. • Database Log-Based CDC • Some databases allow own CDC logs that can be analyzed. • Real-time CDC • So in case you need Real-time CDC, some of the above solutions will solve this need. Depending on the timing (how real-time or near-time) your needs are, you may choose the best suitable option. The trigger based call of Kettle is the most real-time solution. It is also possible to combine all of the above solutions with a continuously executed transformation (e.g. every 15 minutes) that collects the changed data.
2024版kettle使用教程(超详细)
分布式计算原理
阐述Kettle分布式计算的原理, 如何利用集群资源进行并行处理 和任务调度。
01 02 03 04
集群配置与部署
详细讲解Kettle集群的配置步骤, 包括环境准备、节点配置、网络 设置等。
集群监控与管理
介绍Kettle提供的集群监控和管 理工具,方便用户实时了解集群 状态和作业执行情况。
03
实战演练
以一个具体的实时数据处理任务为例, 介绍如何使用Kettle设计实时数据处理 流程。
案例四:Kettle在数据挖掘中应用
数据挖掘概念介绍
01
数据挖掘是指从大量数据中提取出有用的信息和知识的
过程,包括分类、聚类、关联规则挖掘等任务。
Kettle在数据挖掘中的应用
02
Kettle提供了丰富的数据处理和转换功能,可以方便地
Chapter
案例一:ETL过程自动化实现
ETL概念介绍
ETL即Extract, Transform, Load,是数据仓 库技术中重要环节,包括数据抽取、清洗、转 换和加载等步骤。
Kettle实现ETL过程
通过Kettle的图形化界面,可以方便地设计ETL流程, 实现数据的自动化抽取、转换和加载。
作业项配置
对作业项进行详细配置,包括数据源、目标库、 字段映射等。
作业项管理
支持作业项的复制、粘贴、删除等操作,方便快速构建作业。
定时任务设置与执行
定时任务设置
支持基于Cron表达式的定时任务设置,实现 周期性自动执行。
立即执行
支持手动触发作业执行,满足即时数据处理 需求。
执行日志查看
2024版搞定Kettle详细教程
学员心得体会分享
学员A
通过本次学习,我深入了解了Kettle工具的使用方法和技巧,掌握了ETL流程中的各个环节, 对数据处理有了更深入的理解。
学员B
本次课程让我对Kettle有了全新的认识,之前在使用过程中遇到的一些问题也得到了很好的 解决,感谢老师的耐心讲解。
编辑ETL流程。
布局调整
用户可自由调整各面板的大小 和位置,以满足个性化需求。
折叠与展开
支持折叠或展开组件面板和属 性面板,以节省屏幕空间。
快捷键设置及运用场景
01
快捷键设置
用户可在Kettle中进行自定义快捷键设置,提高操作效率。
02
常用快捷键
如Ctrl+S保存、Ctrl+R运行、Ctrl+Z撤销等,方便用户快速执行常用操
资源隔离与限制
对任务进行资源隔离和限制,防止某 个任务占用过多资源导致其他任务无 法执行。
监控指标设置及报警机制构建
监控指标
设置关键监控指标,如任务执行状态、执行时长、数据质量等,以 实时掌握任务运行情况。
报警机制
构建完善的报警机制,当监控指标异常时及时发出报警通知,以便 相关人员第一时间介入处理。
问题2
Kettle界面显示异常或操作不流畅。
解决方案
调整系统分辨率或缩放设置;关闭其 他占用资源较多的程序;升级电脑硬 件配置。
问题3
在使用Kettle进行数据转换时出现错 误。
解决方案
检查数据源连接是否正常;检查转换 步骤是否正确配置;查看Kettle日志, 定位错误原因并进行修复。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
. . . .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进行相关的操作,如:新建、打开、保存、导入、导出等相关操作。
(图1.6)说明:编辑:是对Kettle当前打开的Job与Trans进行相关的操作,如:复制、撤销、环境变量显示、资源库查看、图形界面自定义调整(颜色、字体、样式)等相关操作。
(图1.7)说明:视图:是对Kettle当前打开的Job与Trans进行放大、缩小相关操作。
(图1.8)说明:资源库:是对Kettle中所使用到的资源库进行操作,如:资源库连接、断开、当前用户编辑等操作。
(图1.9)说明:转换:是对Kettle当前所打开的Trans进行相关测试功能。
(图1.10)说明:作业:是对Kettle当前所打开的Job进行操作,如:运行、复制、参数设置等相关操作。
(图1.11)说明:向导:是对Kettle当前所打开的Job或者Trans对其进行一步一步的指导性操作。
(图1.12)说明:帮助:查看当前Kettle版本相关信息。
2 Kettle数据源连接配置Kettle中对于数据源有作用域的定义,也就是说有全局数据源与局部数据源两种。
首先打开Kettle UI界面,使用快键方式(Ctrl+N)创建一个转换,新建数据源如下图:(图2.0)通过点击“新建”,则出现(图2.1)(图2.1)说明:通过(图2.1)我们可以看到创建数据源时需要配置相应的参数:Connection Name(必填):配置数据源使用名称,如:wjsd_srcHost Name(必填):数据库主机IP地址,如:192.168.1.254Database Name(必填):数据库实例名称,如:WJSDTablespace for Data(可选):数据表空间名称Tablespace for indices(可选):数据索引名称Port Number(必填):端口号User Name(必填):用户名Password(必填):密码Access:选择数据库连接方式,ODBC方式则需要配置系统ODBC,JNDI则使用配置jdbc.properties文件,默认为Native(JDBC)连接方式,。
注:在Kettle中如果在填写框末尾出现$符号标识说明此处可以使用变量参数来定义。
填写好数据库连接信息后,点击“Test”按钮,出现效果如(图2.2)(图2.2)说明:配置成功数据源后默认情况下数据源作用域为局部数据源,如果需要把数据源修改成为全局数据源,则选择数据源wjsd_src右击Share保存即可。
3 Kettle全量抽取对于纬表、字典表或者是没有时间戳的表,一般我们都采用全量抽取的方式将业务系统库中的数据抽取到数据仓库中。
乌江水电项目需要用到全量抽取的源表有:下面以CIM下面的d_Reservoir为例详细描述Kettle全量抽取的过程1、创建转换(Ctrl+N),转换名称为:d_Reservoir2、创建数据源连接wjsd_src、wjsd_tag,可参考【Kettle数据源连接配置】3、在Kettle设计盘中拖入“表输入”、“表输出”两个组件即可4、执行转换对数据进行抽取5、查看结果是否与数据源中的数据是否一致步骤1、创建转换(图3.1)说明:当创建转换时点击“核心对象”下方则显示可以在转换中能使用的所有组件。
点击“输入”--单击“表输入”把“表输入”组件往空白处拖入即可。
(图3.2)说明:双击“表输入”组件弹出(图4.2),输入或选择相应的参数信息。
步骤名称:默认为“表输入”,如果想规化建议填写源表名称信息,以便清楚查询是某表结构信息数据库连接:选择数据来源数据源名称SQL:编写查询源数据SQL脚本,可以通过“获取SQL查询语句…”获取。
允许延迟转换:强烈建议默认替换SQL语句里的变量:如果SQL语句中有使用到变量则需要勾选从步骤插入数据:默认执行每一行:默认记录数量限制:0表示默认,如果有特殊需求可以自定义只查询出多少条记录数注:1、在SQL语句中一定不能加入分号(;),这是初学者很容易犯错的一个地方。
2、如果无法确定SQL语句是否正常时可以通过“预览”来查看SQL语句是否正确。
(图3.3)说明:有了源之后则需要有目标,也就是说有我水我们则需要把水通过渠道通向目标如(图4.3) 拖入“表输出”后,我们通过按住“Shift”键单击源划向目标“表输出”,则会出现源指向目标的箭头线。
双击“表输出”如(图4.3),另外可以选择两个或者两个以上的组件进行位置对齐,可以通过Ctrl+向上箭头、Ctrl+向下箭头、Ctrl+向左箭头、Ctrl+向右箭头。
步骤名称:默认为“表输入”,如果想规化建议填写目标表名称信息,以便清楚查询是某表结构信息数据库连接:选择数据来目标数据源名称目标模式:schema,Oracle数据库则是用户名。
目标表:从源数据输出到目标表名提交记录数:设置数据库提交大小裁剪表:清空目标表数据,相当于Oracle数据库Truncate语法忽略插入错误:当插入数据库出错时则可以忽略,默认忽略18条记录数,记不太清楚Specify database fields:手动指定源与目标字段映射关系,如(图4.4)Main options:如果是表分区则可以指定表分区,一般为默认Database fields:如(图3.4)(图3.4)说明:指定源与目标字段映射关系,点击Get fields匹配字段映射关系。
注:在没有勾选“Specify databasefields”情况下,源表字段不能多于目标表的字段数量,否则会出错。
(图3.5)说明:点击运行按钮,或按F9,运行这个转换,根据(图3.5)可以查看出转换运行的日志情况。
(图3.6)说明:根据(图3.6)可以查看出每个步骤执行的记录数、读、写、输入、输出、更新、拒绝、错误、激活、时间、速度。
可以通过查看此处分析当前转换运行效率而断定转换是否需要进行优化。
总结:1、在运行转换时,当前转换是处于并发状态,如果有多个表输入则会同时运行。
2、在设计转换时最好是一个数据流,不要有多条数据流。
如果有多条数据流则有可能发生锁表问题。
4 Kettle增量抽取必要的。
增量抽取一般都是抽取昨天的数据装载到目标表中。
Kettle中参数使用方法有两种:一种是%%变量名%%,一种是${变量名}。
这两种方法变量数据类型都是数字类型。
1、创建转换(Ctrl+N),转换名称为:traget_day2、创建数据源连接wjsd_src、wjsd_tag,可参考【Kettle数据源连接配置】3、在Kettle设计盘中拖入’’执行SQL脚本”、“表输入”、“表输出”三个组件4、执行转换对数据进行抽取5、查看结果是否与数据源中的数据是否一致(图 4.1)注:在SQL中使用变量时需要把“是否替换变量”勾选上,否则无法使变量生效。
说明:这里需要注意的是后面的限定where条件,因为源表的时间字段是时间类型,我们的参数是数字类型,所以需要根据源表时间字段的不同注意转换。
(图 4.2)说明:这里与全量抽取的表输出差不多。
(图 4.3)说明:这里要考虑到数据出错重跑的问题,如果需要重新插入输入参数日期的数据,就必须要先删除输入参数日期的数据,不然会报错。
因为我参数在条件里面,变量替换要打上沟,不然设置的变量会失效。
5 Kettle实时数据抽取乌江水电项目实时数据的表有实时抽取与增量抽取基本上相差不大,只是对时间戳的处理方式不同,以REAL这表为例,详细描述实时抽取过程的步骤。
1、创建转换(Ctrl+N),转换名称为:traget_day2、创建数据源连接wjsd_src、wjsd_tag,可参考【Kettle数据源连接配置】3、在Kettle设计盘中拖入’’执行SQL脚本”、“表输入”、“表输出”三个组件4、执行转换对数据进行抽取5、查看结果是否与数据源中的数据是否一致(图 5-1)说明:因为实时抽取的表时间戳字段一般都为TIMESTAMP类型,这里where条件对参数的处理必须这样,不然可能会在抽取数据的时候导致数据丢失。
(图 5-2)说明:表输出与增量抽取相同,只是目标表不同。
图(5-3)说明:这里与增量抽取相类似,回跑的时候参数日期的数据必须要删除。
同时注意变量替换打上勾。
图(5-4)说明:依次把每个步骤连接起来,顺序如图5-4所示。
6 Kettle定时任务在增量抽取过程中,ETL定时任务是一个必不可少的环节,因为定时任务取决与你的ETL 程序抽取业务数据的频率程度(日、周、季、月、年),一般情况下都采用T+1方式来抽取数据到目标表中,也可以通过指定日期参数抽取到目标表。
6.1 参数变量设置转换首先创建相应的参数变量设置转换(Set_Param.ktr)。
对于怎样获取昨天日期,一般通过“获取系统信息”组件获取昨天日期,再通过字段选择转换成yyyy-mm-dd格式,最后设置成变量,设置参数变量为${YESTERDAY}。
如下图:(图6.1-1)获取相关的日期参数,昨天日期。
(图 6.1-2)由于获取日期是到时分秒,通过字段选择转换成年月日格式。
图(6.1-3)设置参数,点确定时会提示大致意思是“设置的参数不能在当前转换中使用”。
图(6.1-4)依次连接每个步骤,简单的参数设置转换就算完成了。