数据清洗黑马程序员 第3章Kettle工具的基本使用 --学习笔记

3.1 Kettle简介

3.1.1 Kettle 概述

      Kettle是一款国外免费开源的轻量级ETL工具,是基于Java语言开发的,可以在Windows、Linux、UNIX系统上运行。

       Kettle工具主要由4个组件组成,分别是Spoon、Pan、Kitchen及Carte组件,具体功能介绍如下。

> Spoon是Kettle集成开发环境,它会提供一个基于SWT的图形用户界面,主要用于构建ETL Jobs(作业)和Transformations(转换),也可用于执行或调试作业、转换,还可用于监控ETL操作的性能。

>Pan是以命令行的方法执行Spoon生成的Transformations程序,运行在后台,并且该组件没有图形化用户界面。

>Kitchen是以命令行的方法执行Spoon生成的Jobs程序,运行在后台,并且该组件没有图形化用户界面。

>Carte是Kettle中的一个重要组件,它是基于Tetty的轻量级HTTP服务器,运行在后台,主要用于远程监控HTTP执行Jobs和Transformations的进度。

3.1.2 Kettle的设计原则

1. 易于开发;

2. 避免自定义开发;

3. 所有功能都能通过用户界面完成;

4. 没有命名限制;

5. 透明;

6. 灵活的数据通道;

7. 只映射需要映射的字段。

3.2 Kettle的下载安装

1. 下载Kettle安装包

Kettle官网下载地址为 https://sourceforge.net/projects/pentaho/files/Data%20Integration/

2. 安装Kettle

3. 配置Kettle

4. 启动Kettle

双击Kettle安装目录下的Spoon.bat脚本,启动Kettle。

3.3 Kettle的基本概念

一个数据抽取过程主要包括创建一个作业,并且每个作业可以包括多个转换操作。

Kettle工具的执行分为两个层次,即转换和作业,这两个层次最主要的区别在于数据传递和执行方式。

3.3.1 转换

转换是ETL解决方案中重要的组成部分之一,主要用于数据的抽取、转换以及加载等操作,其本质是一组图形化的数据转换配置的逻辑结构。一个转换包括一个或多个步骤,如读取文件、过滤输出行、数据清洗或将数据加载到数据库中等步骤。转换中的步骤是通过调连接的。跳定义了一个单向通道,允许数据从一个步骤向另一个步骤流动。在Kettle中,数据的单位是行,数据流就是数据行从一个步骤到另一个步骤的移动。

例子:

图1 转换的例子

从图1中可看出,这个转换例子是实现从数据库中读取数据,并把数据写到文本文件中,该转换包含了步骤、跳、注释以及数据行。

1. 步骤

步骤是转换里面的基本组成部分,也可以称为控件。步骤以图表的方式展现。

一般地,每个步骤都会具有一些关键特性,具体如下:

> 每个步骤都必须有一个名字,并且这个名字在转换范围内唯一。

> 每个步骤都可以读、写数据行。需要注意的是,“生成记录”步骤除外,因为该步骤只用于写数据。

> 步骤将数据写到与之相连的一个或多个输出跳,在传送到跳的另一端的步骤。对于另一端对步骤来说,这个跳就是一个输入跳,步骤通过输入跳接收数据。

> 大多数的步骤都可以有多个输出跳,一个步骤的数据发送可以设置为轮流发送和复制发送。轮流发送是将数据行依次发送给每个输出跳。复制发送是将全部数据行发送给所有的输出跳。

 > 在运行转换时,一个线程运行一个步骤和步骤的多份副本,所以步骤的线程几

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值