文档章节

数据层交换和高性能并发处理(开源ETL大数据治理工具--KETTLE使用及二次开发 )

beifeng_泠
 beifeng_泠
发布于 2014/01/02 14:01
字数 1400
阅读 1486
收藏 13

ETL是什么?为什么要使用ETL?KETTLE是什么?为什么要学KETTLE?

       ETL是数据的抽取清洗转换加载的过程,是数据进入数据仓库进行大数据分析的载入过程,目前流行的数据进入仓库的过程有两种形式,一种是进入数据库后再进行清洗和转换,另外一条路线是首先进行清洗转换再进入数据库,我们的ETL属于后者。

大数据的利器大家可能普遍说是hadoop,但是大家要知道如果我们不做预先的清洗和转换处理,我们进入hadoop后仅通过mapreduce进行数据清洗转换再进行分析,垃圾数据会导致我们的磁盘占用量会相当大,这样无形中提升了我们的硬件成本(硬盘大,内存小处理速度会很慢,内存大cpu性能低速度也会受影响),因此虽然hadoop理论上解决了烂机器拼起来解决大问题的问题,但是事实上如果我们有更好的节点速度必然是会普遍提升的,因此ETL在大数据环境下仍然是必不可少的数据交换工具。

市场上流行的ETL很多,比如informatica等,但是开源的比较完善的却不是很多,而其中比较有名的要说是pentaho开源的kettle了,该工具被广泛用,并且开源的产品我们从中不仅可以学到ETL的简单应用,并且可以学习到ETL的原理以及通过源码学到更多的东西。

 

 

亮点一:KETTLE应用广泛,仅仅学会使用就可以找到一份不错的工作。

 

亮点二:本课程不仅讲解简单实用,同时讲解二次开发并且配有开发模板,提升工作质量。

 

亮点三:渗透了大数据的一些处理方法,与目前流行的hadoop配合使用。

 

亮点四:分析KETTLE源码,即使对ETL兴趣不大,至少可以了解国外开源项目的一些源码,并且KETTLE本身也使用了很多开源项目,因此可以从该工具上学到更多东西。

 

 

 

通过课程可以学到什么:

 

 

1.ETL过程原理

 

2.数据流引擎的原理

 

3.元数据和数据进行动态数据交换的设计

 

4.并发运算的原理

 

 

课时安排:(15课时)

 

 

1.ETL简介—开源KETTLE(1课时)

 

>介绍KETTLE在大数据应用的位置和作用。

>主要讲解ETL是什么,KETTLE进行简单介绍,并且使用例子进行KETTLE的使用介绍。

>介绍KETTLE流程的部署。

 

 

2.KETTLE使用(1课时)

 

>详细介绍KETTLE的spoon使用

>KETTLE的trans和job入门

>KETTLE的日志和调试工具使用

 

 

3. KETTLE之Step流程设计(3课时)

 

>编写例子介绍KETTLE常用的转换、清洗组件

>主要完成以下插件:

输入插件:

文本文件输入、生成记录、表输入、Fixed file input、Get data from XML

输出插件:

XML输出、删除、插入/更新、文本文件输出、更新、表输出

转换插件:

Add a checksum、Replace in string、Set field value、Unique rows(HashSet)、增加常量、增加序列、字段选择、拆分字段

Flow插件:

Abort、Switch/case、空操作、过滤记录

脚本插件:

Modified Java Script Value、执行SQL脚本

查询插件:

File exists、Table exists、调用DB存储过程

 

 

4. KETTLE之Job流程设计(2课时)

 

>编写例子介绍KETTLE常用的作业组件

>主要完成以下插件:

通用插件:

START、DUMMY、Transformation、Success

文件管理插件:

Copy Files、Compare folders、Create a folder、Create file、Delete files、Delete folders、File Compare、Move Files、Wait for file、Zip file、Unzip file

条件插件:

Check Db connections、Check files locked、Check if a folder is empty、Check if files exist、File Exists、Table exists、Wait for

脚本插件:

Shell、SQL

Utility插件:

Ping a host、Truncate tables

文件传输插件:

Upload files to FTPS、Get a file with FTPS、FTP Delete

>Kettle与Hadoop的联合使用

 

 

5. KETTLE之流程性能调优与监控(1课时)

 

>介绍KETTLE的流程监控功能

>介绍KETTLE的性能优化方法

 

 

6. KETTLE之嵌入开发(1课时)

 

>编写程序介绍KETTLE的流程如何嵌入到我们的java应用中

主要包括java嵌入trans以及job流程

 

 

7. KETTLE之自定义Step、Job插件制作(3课时)

 

>编写Step和Job模板,并给大家作为二次开发的基础工程使用,提高大家的开发效率。

>编写程序说明Step和Job插件的开发方法。

 

 

8. KETTLE之数据同步方案(1课时)

 

>介绍5种数据同步方案,并且这5种方案都是支持异构数据同步的。

包括全量快速同步方案和增量同步方案

 

 

9. KETTLE之分区、集群以及原理(1课时)

 

>介绍KETTLE的分区原理,并且讲解配置使用。

>介绍KETTLE的集群原理,并且讲解配置使用,以及监控方法。

 

 

10. KETTLE之源码分析与二次开发(1课时)

 

>介绍KETTLE的SRC导入ECLIPSE方法,以及打包和运行方法。

>分析KETTLE的包结构以及运行流程,讲解KETTLE的运行原理。

 参加公开课请加QQ群  2群:217108493       4群:275733010

 

© 著作权归作者所有

共有 人打赏支持
beifeng_泠
粉丝 1
博文 7
码字总数 15857
作品 0
虹口
加载中

评论(1)

码大仙人
码大仙人
数据层交换和高性能并发处理教程
百度网盘地址:链接:http://pan.baidu.com/s/1mgzsHtA 密码:c20j
01.etl使用简介_开源KETTLE
02.KETTLE的使用
03.KETTLE之Step流程设计1
04.KETTLE之Step流程设计2
05.KETTLE之Step流程设计3
06.KETTLE之Job流程设计1
07.KETTLE之Job流程设计2
08.KETTLE之流程性能调优与监控
09.KETTLE之嵌入开发
10.KETTLE之自定义Step、Job插件制作1
11.KETTLE之自定义Step、Job插件制作2
12.KETTLE之自定义Step、Job插件制作3
13.KETTLE之数据同步方案
14.KETTLE之分区、集群以及原理
15.KETTLE之源码分析与二次开发
开源 BI 系统相关知识综合解读

这些众多的BI(商业智能)项目从规模和对BI系统支撑的完善程度上来说,大体可以分为Framework、Stand-aloneTools和BISuit三种类型。 Framework 开源框架,这是在商业BI系统中所没有的。我们可...

红薯
2009/05/06
614
0
ETL调度技术平台--TASKCTL

ETL的技术本质是:通过调度管理控制一系列具有数据处理功能的各种程序有序地运行。因此,有人总结:“ETL是BI(商业智能)的基础,调度是ETL的灵魂”。从功能层面讲,调度是ETL技术体系的重要...

施鹏飞
2013/01/26
18.3K
14
数据仓库经验老鸟分享零基础转行大数据的最佳自学之路

本人从08年从事数据仓库工程师转到目前大数据管理工作的,对数据仓库感情颇深,也曾一直苦于没有太好的学习资料,自行摸索。 我认为数据仓库更像一门管理学艺术,大多用的也是关系型数据库,...

董黎明
06/22
0
0
Kettle 与 Talend Open Studio 的 ETL 比较

Pentaho Data Integration (Kettle)是Pentaho生态系统中默认的ETL工具。通过非常直观的图形化编辑器(Spoon),您可以定义以XML格式储存的流程。在Kettle运行过程中,这些流程会以不同的方法...

ychenETL
2011/06/13
0
0
几款开源的ETL工具及ELT初探

几款开源的ETL工具及ELT初探 作者:佚名来源:开源中国|2017-02-13 21:32 ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(lo...

yuanwx0328
2017/11/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

java并发备忘

不安全的“先检查后执行”,代码形式如下: if(条件满足){ //这里容易出现线程安全问题//doSomething}else{//doOther} 读取-修改-写入 原子操作:使用CAS技术,即首先从V中读取...

Funcy1122
今天
0
0
SpringBoot2.0 停机

最近新建了个SpringBoot2.0的项目,因为原来一直使用的是传统的Tomcat部署war包的形式,所以这次SpringBoot内置Tomcat部署jar包的时候遇到了很多问题。其中一个就是因为没有外置的Tomcat容器...

Canaan_
昨天
0
1
Confluence 6 外部参考

一个外部参考的意思是任何站点链接到你 Confluence 的实例。任何时候当 Confluence 的用户单击这个外部链接的时候,Confluence 可以记录这次单击为参考。 在默认的情况下,外部链接的参考链接...

honeymose
昨天
0
0
Android中的设计模式之抽象工厂模式

参考 《设计模式解析》 第十一章 Abstract Factory模式 《设计模式:可复用面向对象软件的基础 》3.1 Abstract Factory 抽象工厂 对象创建型模式 《Android源码设计模式解析与实战》第6章 创...

newtrek
昨天
0
0
Redis | 地理空间(GEO)的一个坑

Redis的地理空间(Geo)是个好东西,轻轻松松的就可以把地图描点的问题处理了, 最近却遇到一个坑...Redis采用的Msater-Slave模式, 运用GEORADIUS在salve读取对应的数据,新增了从节点但是从不返...

云迹
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部