博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Kettle开源项目一款ETL工具
阅读量:4101 次
发布时间:2019-05-25

本文共 1547 字,大约阅读时间需要 5 分钟。

1、ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程)

       ETL的定义 ETL分别是“Extract”、“ Transform” 、“Load”三个单词的首字母缩写也就是“抽取”、“转换”、“装载” ,但我们日常往往简称其为数据抽取。ETL包含了三方面,首先是“抽取”:将数据从各种原始的业务系统中读取出来,这是所有工作的前提。其次“转换”:按照预先设计好的规则将抽取得数据进行转换,使本来异构的数据 格式能统一起来。最后“装载”:将转换完的数据按计划增量或全部导入到数据仓库中。

       ETL是BI/DW的核心和灵魂,按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。如果说数据仓库的模型设计是一座大厦的设计蓝图,数据是砖瓦的话,那么ETL就是建设大厦的过程。在整个项目中最难部分是用户需求分析和模型设计,而ETL规则设计和实施则是工作量最大的,其工作量要占整个项目的60%-80%,这是国内外专家从众多实践中得到的普遍共识。

      用户的数据源分布在各个子系统和节点中,利用ETL将各个子系统上的数据,通过自动化FTP或手动控制传到UNIX或NT服务器上,进行抽取、清洗和转化处理,然后加载到数据仓库。因为现有业务数据源多,保证数据的一致性,真正理解数据的业务含义,跨越多平台、多系统整合数据,最大可能提高数据的质量,迎合业务需求不断变化的特性,是ETL技术处理的关键。

 

2、Kettle开源项目

       在ETL开源项目中,Kettle当属翘首,是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。项目的名字的意思是水壶,根据该项目的作者matt的说法:把各种数据放在一个壶里,然后以一种你希望的格式输出。
Kettle家族目前包括4个产品:Spoon、Pan、CHEF、Kitchen

Chef(中文:厨师)、Kitchen(中文:厨房)、Spoon(中文:勺子)、Pan(中文:平底锅)

    Chef—工作(job)设计工具 (GUI方式)

    Kitchen—工作(job)执行器 (命令行方式)

    Spoon—转换(transform)设计工具 (GUI方式)

    Span—转换(transform)执行器 (命令行方式)

Kettle7.1下载(Data Integration

官方地址:https://sourceforge.net/projects/pentaho/files/Data%20Integration/7.1/pdi-ce-7.1.0.0-12.zip/download

国内镜像(速度快):

1)java JDK 安装与部署(JDK1.8)

2)因Kettle是开源工具,下载的压缩包直接解压到本地路径即可。

3) 配置Kettle的环境变量

    (前提是配置好Java的环境变量,因为他是java编写,需要本地的JVM的运行环境)在系统的环境变量中添加KETTLE_HOME变量,目录指向kettle的安装目录:D:\kettle\data-integration(具体以安装路径为准)

4)Kettle运行

首先解压下载下来的压缩包如:pdi-ce-6.1.0.1-196.zip

进入到Kettle目录,双击运行(window环境)spoon.bat文件

打开后请耐心等待一会儿时间,出现如下界面及说明kettle成功部署。

--------------------- 

转载:https://blog.csdn.net/kevin_sticker/article/details/78125502  

你可能感兴趣的文章
CentOS7,玩转samba服务,基于身份验证的共享
查看>>
计算机网络-网络协议模型
查看>>
计算机网络-OSI各层概述
查看>>
Java--String/StringBuffer/StringBuilder区别
查看>>
分布式之redis复习精讲
查看>>
数据结构与算法7-栈
查看>>
Java并发编程 | 一不小心就死锁了,怎么办?
查看>>
(python版)《剑指Offer》JZ01:二维数组中的查找
查看>>
(python版)《剑指Offer》JZ06:旋转数组的最小数字
查看>>
(python版)《剑指Offer》JZ13:调整数组顺序使奇数位于偶数前面
查看>>
(python版)《剑指Offer》JZ28:数组中出现次数超过一半的数字
查看>>
(python版)《剑指Offer》JZ30:连续子数组的最大和
查看>>
(python版)《剑指Offer》JZ02:替换空格
查看>>
JSP/Servlet——MVC设计模式
查看>>
使用JSTL
查看>>
Java 8新特性:Stream API
查看>>
管理用户状态——Cookie与Session
查看>>
最受欢迎的前端框架Bootstrap 入门
查看>>
JavaScript编程简介:DOM、AJAX与Chrome调试器
查看>>
通过Maven管理项目依赖
查看>>