admin 管理员组文章数量: 1087139
2024年4月14日发(作者:表格选项有下拉菜单)
Kettle程序分析
1. 简介
ETL是数据抽取(Extract)、转换(Transform)、装载(Load)的过程。
Kettle是一款国外开源的ETL工具,有两种脚本文件transformation和job,transformation
完成针对数据的基础转换,job则完成整个工作流的控制。
2. 相关概念
Job:一个作业,由不同逻辑功能的entry组件构成,数据从一个entry组件传递到另一个
entry组件,并在entry组件中进行相应的处理。
Transformation:完成针对数据的基础转换,即一个数据转换过程。
Entry:实体,即job型组件。用来完成特定功能应用,是job的组成单元、执行单元。
Step:步骤,是Transformation的功能单元,用来完成整个转换过程的一个特定步骤。
Hop:工作流或转换过程的流向指示,从一个组件指向另一个组件,在kettle源工程中有三
种hop,无条件流向、判断为真时流向、判断为假时流向。
3. 体系结构
kettle平台是整个系统的基础,包括元数据管理引擎、数据集成引擎、UI和插件管理模块。
(1) 元数据管理引擎
元数据管理引擎管理ktr、kjb或者元数据库,插件通过该引擎获取基本信息,主要包括
TransMeta、JobMeta和StepMeta三个类。
TransMeta类,定义了一个转换(对应一个.ktr文件),提供了保存和加载该文件的方法;
JobMeta类,同样对应于一个工作(对应一个.kjb文件),提供保存和加载方法;
StepMeta类,保存的是Step的一些公共信息的类,每个类的具体的元数据将保存在显示
了StepMetaInterface的类里面。
(2) 数据集成引擎
数据集成引擎包括Step引擎、Job引擎和数据库访问引擎三大部分,主要负责调用插件,
并返回相应信息。
版权声明:本文标题:Kettle体系结构与源码分析 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1713068655a618307.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论