Pentaho Kettle Solutions (读书笔记)【2. Kettle基本概念】

本文介绍Kettle中的转换和作业概念,包括步骤(step)、跳(hop)、并行执行等核心组件,以及如何使用Spoon、Kitchen等工具进行ETL流程的设计和执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Kettle 设计模块

转换

转换包括一个或多个步骤(step),这些步骤由跳(hop)连接,跳定义了一个单向通道,允许数据从一个步骤向下一个流动。在Kettle里,数据的单位是行,数据流就是数据行从一个步骤到另一个步骤的流动。

  • 步骤

步骤名在转换范围内唯一;每个步骤(除生成记录)都会读写数据行;输入跳(incoming hops)和输出跳(outgoing hops);轮流发送和复制发送;

  • 转换的跳

跳(hop)实际上是两个步骤之间的被成为行集(row set)的数据行缓存

  • 并行

所有的步骤都以并发方式执行;转换的步骤几乎是同时启动

  • 数据行

行集里所有的行都应该有同样的数据结构;字段元数据不会在转换中发生变化;KETTLE_EMPTY_STRING_DIFFERS_FROM_NULL设置

  • 数据转换

作业

转换以并行方式执行,所以需要一个可以串行执行的作业去处理一些维护操作。一个作业包括一个或多个作业项,作业项的执行顺序由作业项之间的跳(job hop)和每个作业项的执行结果决定。

  • 作业项

作业项可以有影子拷贝,所有影子拷贝内信息相同;每编辑一个作业项,其所有影子拷贝的内容随之改变;结果对象(result object)包含数据行,但不是以流的形式传递,只有一个作业项完成了才会传递;一个作业必须有且只有一个开始作业项。

  • 作业跳

对作业项的结果判断如下:无条件执行;当运行结果为真时执行;当运行结果为假时执行。

  • 多路径和回溯

Kettle作业通过回溯算法决定执行路径

  • 并行执行

转换或作业的元数据

  • 名字 (unique)
  • 文件名
  • 目录
  • 描述
  • 扩展描述

数据库连接

  • 连接名称
  • 连接类型
  • 访问方式
  • 主机名
  • 数据库名
  • 端口号
  • 用户名和密码

工具

  • Spoon:图形界面工具,快速设计和维护复杂的ETL工作流
  • Kitchen:运行作业的命令行工具
  • Pan:运行转换的命令行工具
  • Carte:轻量级的(1MB)Web服务器,用来远程执行转换或作业

资源库

  • 数据库资源库
  • Pentaho资源库
  • 文件资源库

无论哪种资源库都应具有以下特性:中央存储;文件加锁;修订管理;依赖完整性检查;安全性;引用

虚拟文件系统

Kettle支持URL形式的文件名;
文件名:/data/filename.dat
文件名:file:///data/filename.dat
作业:http://www.someweb.com/filename.kjb
目录:zip:file:///somefile.zip
通配符:*.txt$

高清版(中文) 《Pentaho Kettle解决方案:使用PDI构建开源ETL解决方案》主要介绍如何使用开源ETL工具来完成数据整合工作。 《Pentaho Kettle解决方案:使用PDI构建开源ETL解决方案》介绍的PDI(Kettle)是一种开源的 ETL 解决方案,书中介绍了如何使用PDI来实现数据的剖析、清洗、校验、抽取、转换、加载等各类常见的ETL类工作。 除了ODS/DW类比较大型的应用外,Kettle 实际还可以为中小企业提供灵活的数据抽取和数据处理的功能。Kettle除了支持各种关系型数据库、HBase、MongoDB这样的NoSQL数据源外,它还支持、Access这类小型的数据源。并且通过插件扩展,Kettle 可以支持各类数据源。本书详细介绍了Kettle可以处理的数据源,而且详细介绍了如何使用Kettle抽取增量数据Kettle数据处理功能也很强大,除了选择、过滤、分组、连接、排序这些常用的功能外,Kettle 里的Java表达式、正则表达式、Java脚本、Java类等功能都非常灵活而强大,都非常适合于各种数据处理功能。本书也使用了一些篇幅介绍Kettle这些灵活的数据处理功能。 《Pentaho Kettle解决方案:使用PDI构建开源ETL解决方案》后面章节介绍了如何在 Kettle 上开发插件,如何使用Kettle处理实时数据流,以及如何在Amazon AWS上运行Kettle 等一些高级主题。 除了介绍PDI(Kettle)工具的使用和功能,本书还结合Kimball博士的数据仓库和ETL子系统的理论,从实践的角度介绍数据仓库的模型设计、数据仓库的构建方法,以及如何使用 PDI实现Kimball博士提出的34种ETL子系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值