kettle的基础概念入门、下载、安装、部署

news2024/10/6 18:31:37

1、什么是ETL?

答:ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少,这里我要学习的ETL工具是Kettle!

2、什么是Kettle?

答:Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。
Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。
Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。
Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。
Kettle(现在已经更名为PDI,Pentaho Data Integration-Pentaho数据集成)。

3、Kettle的结构。

在这里插入图片描述

4、Kettle的结构-Spoon和Data Integration Server。

答:Spoon是构建ETL Jobs和Transformations的工具。Spoon以拖拽的方式图形化设计,能够通过spoon调用专用的数据集成引擎或者集群。

Data Integration Server是一个专用的ETL Server,它的主要功能有:
在这里插入图片描述

5、Kettle的结构-Enterprise Console。

答:Enterprise Console(企业控制台)提供了一个小型的客户端,用于管理Pentaho Data Integration企业版的部署。包括企业版本的证书管理、监控和控制远程Pentaho Data Integration服务器上的活动、分析已登记的作业和转换的动态绩效。

6、kettle的核心组件。

在这里插入图片描述

7、Kettle概念模型。Kettle的执行分为两个层次:Job(作业)和Transformation(转换)。

在这里插入图片描述

8、Kettle的下载。

Kettle官方网址:https://community.hitachivantara.com/s/article/data-integration-kettle,不建议官网下载,贼慢,压缩包一个G左右的。

Kettle的百度网盘地址(个人分享):

7.1

链接:https://pan.baidu.com/s/1Q7lCE-xbljl-afc0zb9V8Q?pwd=k9yo
提取码:k9yo

8.0

链接:https://pan.baidu.com/s/10QU6b4pVkVEskIKSVfhcyw?pwd=slsp
提取码:slsp

8.3

链接:https://pan.baidu.com/s/1r0gvuFJme5jKxwNQ3FWynA?pwd=3yoo
提取码:3yoo

8.2

链接:https://pan.baidu.com/s/1XArURfTi6eRU1t4FH2wyPg?pwd=234a
提取码:234a

9.1

链接:https://pan.baidu.com/s/1ipOlSex94jYLWrPDNCZ3Ow?pwd=5iku
提取码:5iku

9、 Kettle的压缩包下载完毕,解压缩即可。Kettle的目录文件,如下所示:

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

10、 Kettle的部署,Kettle下载以后需要配置一下环境变量,因为Kettle是纯Java开发的哦!

由于Kettle是Java语言开发的,该软件的允许需要Java运行环境的依赖。需要先安装JDK,准备好Java软件的运行环境。安装jdk1.8版本即可,配置环境变量,这些自己百度一下就行了,不啰嗦了。在Window10环境下,双击Spoon.bat即可运行了。

11、Kettle界面简介。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

12、Kettle实现,把数据从CSV文件复制到Excel文件。

首先,创建一个转换,找到核心对象,找到输入里面的CVS文件输入图元,拖拽到工作区域,双击CVS文件输入。

可以修改步骤的名称,点击浏览,选择到CVS文件,其他参数可以默认,点击获取字段,最后点击确定。

在这里插入图片描述
CVS文件输入配置完毕以后,可以配置Excel输出,如下所示:
在这里插入图片描述
此时,可以 按住shift拖动鼠标,划线,将CVS文件输入和Excel输出连到一起。
在这里插入图片描述
最后,点击Excel输出,选择字段,点击获取字段,将输出到Excel的字段进行映射,最后点击确定即可。

在这里插入图片描述

点击ctrl + s保存,然后点击启动按钮即可。

在这里插入图片描述

13 、Kettle的执行结果。

在这里插入图片描述

14、Kettle,可以被称为可视化编程。

1)、Kettle可以被归类为可视化编程语言(Visula Programming Languages,VPL),因为Kettle可以使用图形化的方式定义复杂的ETL程序和工作流。
2)、Kettle里的图就是转换和作业。
3)、可视化编程一直是Kettle里的核心概念,它可以让你快速构建复杂的ETL作业和减低维护工作量。它通过隐藏很多技术细节,使IT领域更贴近于商务领域。

15、Kettle里面的转换。

1)、转换(transaformation)是ETL解决方案中最主要的部分,它处理抽取、转换、加载各种对数据行的操作。
2)、转换包含一个或多个步骤(step),如读取文件、过滤数据行、数据清洗或将数据加载到数据库。
3)、转换里的步骤通过跳(hop)来连接,跳定义一个单向通道,允许数据从一个步骤向另一个步骤流动。
4)、在Kettle里,数据的单位是行,数据流就是数据行从一个步骤到另一个步骤的移动。
5)、数据流有的时候也被称之为记录流。

16、Kettle里面的,Step步骤(控件)是转换里的基本的组成部分。

一个步骤有如下几个关键特性:

1)、步骤需要有一个名字,这个名字在转换范围内唯一。
2)、每个步骤都会读、写数据行(唯一例外是"生成记录"步骤,该步骤只写数据)。
3)、步骤将数据写到与之相连的一个或多个输出跳,再传送到跳的另一端的步骤。
4)、大多数的步骤都可以有多个输出跳。一个步骤的数据发送可以被被设置为分发和复制,分发是目标步骤轮流接收记录,复制是所有的记录被同时发送到所有的目标步骤。

17、Kettle里面的,Hop跳(即图元之间的连线)。

1)、跳就是步骤之间带箭头的连线,跳定义了步骤之间的数据通路。
2)、跳实际上是两个步骤之间的被称之为行集的数据行缓存(行集的大小可以在转换的设置里定义)。
3)、当行集满了,向行集写数据的步骤将停止写入,直到行集里又有了空间。
4)、当行集空了,从行集读取数据的步骤停止读取,直到行集里又有可读的数据行。

18、Kettle里面的,数据行-数据类型。

数据以数据行的形式沿着步骤移动。一个数据行是零到多个字段的集合,字段包含下面几种数据类型。

1)、String:字符类型数据
2)、Number:双精度浮点数。
3)、Integer:带符号长整型(64位)。
4)、BigNumber:任意精度数据。
5)、Date:带毫秒精度的日期时间值。
6)、Boolean:取值为true和false的布尔值。
7)、Binary:二进制字段可以包含图像、声音、视频及其他类型的二进制数据。

19、Kettle里面的,数据行-元数据。

每个步骤在输出数据行时都有对字段的描述,这种描述就是数据行的元数据。通常包含下面一些信息。

1)、名称:行里的字段名应用是唯一的。
2)、数据类型:字段的数据类型。
3)、格式:数据显示的方式,如Integer的#、0.00。
4)、长度:字符串的长度或者BigNumber类型的长度。
5)、精度:BigNumber数据类型的十进制精度。
6)、货币符号:¥。
7)、小数点符号:十进制数据的小数点格式。不同文化背景下小数点符号是不同的,一般是点(.)或逗号(,)。
8)、分组符号:数值类型数据的分组符号,不同文化背景下数字里的分组符号也是不同的,一般是点(.)或逗号(,)或单引号(’)。

20、Kettle里面的,并行概念。

跳的这种基于行集缓存的规则允许每个步骤都是由一个独立的线程运行,这样并发程度最高。这一规则也允许数据以最小消耗内存的数据流的方式来处理。在数据仓库里,我们经常要处理大量数据,所以这种并发低消耗内存的方式也是ETL工具的核心需求。

对于kettle的转换,不可能定义一个执行顺序,因为所有步骤都以并发方式执行:当转换启动后,所有步骤都同时启动,从它们的输入跳中读取数据,并把处理过的数据写到输入跳,直到输入跳里不再有数据,就中止步骤的运行。当所有的步骤都中止了,整个转换就中止了。 (要与数据流向区分开)

如果你想要一个任务沿着指定的顺序执行,那么就要使用后面所讲的"作业"!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/942003.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

测试人员的核心价值:Bug 要素

什么是Bug?只要不能满足预期的东西都可以称之为Bug。所以,Bug也是广义的Bug,可以分为功能Bug,性能Bug,安全Bug,甚至流程Bug。 对于一个Bug,优秀的测试工程师要能够定位Bug原因,并给…

Golang Gorm 一对多关系 表结构的建立

Belongs To belongs to 会与另一个模型建立了一对一的连接。 这种模型的每一个实例都“属于”另一个模型的一个实例。 例如,应用包含 user 和 company,并且每个 user 能且只能被分配给一个 company。 下面的类型就表示这种关系。 注意,在 U…

MR混合现实石油化工课堂情景实训教学演示

MR(混合现实)技术是一种结合了虚拟现实(VR)和增强现实(AR)优势的新型技术,在教育领域具有广阔的应用前景。在石油化工课堂中,MR混合现实情景实训教学的应用可以大大提高学生的学习效…

Camunda 7.x 系列【32】包含网关

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 2.7.9 本系列Camunda 版本 7.19.0 源码地址:https://gitee.com/pearl-organization/camunda-study-demo 1. 概述 Inclusive Gateway包含网关可以看作排他网关和并行网关的结合体。 与排他网关类似,可以定…

ABAP固定点算术

在程序的属性中有一个默认勾选的设置,Fixed point arithmetic 定价例程VOFM所在的函数组是没有勾选的,所以例程中的计算要小心 我们主要测试一下不勾选的情况。我们新建一个程序ytest_cl,注意不要勾选定点运算 DATA:l_kbetr TYPE p LENGTH 1…

活动预告|2023全球纺织碳中和国际峰会,有哪些看点?

会议背景 在全球时尚产业减排的关键期,作为仅次于石化工业的第二大污染产业,时尚行业的绿色生产迫在眉睫。纺织工业每年向大气排放 1.22 至 29.3 亿吨二氧化碳,据估计,纺织品的生命周期(包括洗涤)占全球温…

罗技M720删除蓝牙连接后,蓝牙搜索列表找不到设备

原因 因误删蓝牙鼠标(罗技M720)设备,再次添加蓝牙设备时蓝牙列表找不到设备(罗技M720)。 蓝牙配对 1、确保 M720 已开启 2、按住显示屏下方的切换按钮 3 秒钟(所选通道上的 LED 将开始快速闪烁&#xff…

【Java架构-版本控制】-Git进阶

本文摘要 Git作为版本控制工具,使用非常广泛,在此咱们由浅入深,分三篇文章(Git基础、Git进阶、Gitlab搭那家)来深入学习Git 文章目录 本文摘要1. Git分支管理2. Git分支本质2.1 分支流转流程(只新增文件)2.2 分支流转流…

雪亮工程2.0:雪亮工程二期智能化综合管理AI大数据平台建设方案设计

一、方案背景 雪亮工程主要是针对农村地区治安防控的监控项目,在乡村的主干道、路口、人群聚集地部署高清摄像头,通过三级综治中心和指挥平台,将视频图像信息系统纵向下延至县、乡、村,通过建设各类视频监控点,实现视…

Leetcode 易错题整理(一)5. 7. 11. 15. 33. 34

5. 最长回文子串 给你一个字符串 s,找到 s 中最长的回文子串。 如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。 示例 1: 输入:s "babad" 输出:"bab" 解释:"aba&q…

ssm+vue中国咖啡文化宣传网站源码和论文

ssmvue中国咖啡文化宣传网站源码和论文078 开发工具:idea 数据库mysql5.7 数据库链接工具:navcat,小海豚等 技术:ssm 课题背景 随着时代的发展和人们生活理念的进一步改变,咖啡业已经成为了全球经济中发展最迅猛的产业之一。…

计算机网络高频面试题解(一)

1. OSI七层模型 2. TCP/IP五层模型 3. TCP、UDP区别 4. TCP三次握手 5. TCP四次挥手 6. TCP状态转换图 7.TCP状态中TIME_WAIT作用 8. TCP连接建立为什么不是两次握手 9. TCP第三次握手失败会出现什么 10. TCP长连接和短链接及优缺点

windows server dfs复制 命名空间

环境准备 1、ad域控服务器 1台 2、文件服务器 2台,要加域 3、windows客户都1台,测试用 实现功能 负载均衡 (文件服务器1:负责部门1,部门2的共享文件访问, 文件服务器2:负责部门3,…

无客户端网络准入方案,为集成电路企业终端管理开启省事更省心模式

宁盾无客户端网络准入控制方案正在成为先进制造、高科技互联网企业等创新型客户的优选方案。创新型客户以技术密集型、研发人员占比高著称,在进行网络准入建设时,如何平衡好用户体验与顺利达成项目预期之间的矛盾,是创新企业 IT 安全团队格外…

什么是IOC?为什么要使用IOC?

什么是IOC? IOC(Inversion of Control,控制反转)是一种设计原则和编程思想,它在软件开发中用于管理组件之间的依赖关系,提高代码的松耦合性和可维护性。IOC 的核心思想是将组件之间的依赖关系反转&#xf…

星融元:面向校园网的云化园区网络解决方案发布

校园网改造漫漫长路,修修补补何时到头? 这一次我们从底层网络架构入手,通过引入云数据中心长期践行的先进技术理念,直击问题根源!接下来我们将从核心架构,无线网络设计、出口安全和内网接入安全等角度介绍 …

从0开始分析ipa之 Hopper Disassembler 反编译工具的使用

在iOS逆向中,反编译工具扮演着至关重要的角色,帮助开发者深入理解和分析应用程序的内部结构。Hopper Disassembler 是一款备受推崇的工具,它可以帮助我们解开应用程序的面纱,探索其中的奥秘。本文将从零开始,介绍如何使…

CSS实现白天/夜晚模式切换

目录 功能介绍 示例 原理 代码 优化 总结 功能介绍 在网页设计和用户体验中,模式切换功能是一种常见的需求。模式切换可以为用户提供不同的界面外观和布局方案,以适应其个人偏好或特定环境。在这篇博客中,我们将探索如何使用纯CSS实现一…

生产消费者模型概念以及代码

概念 何为生产消费者模型?在设计的角度上看,普通的进程间通信,可以认为发送信息与接收信息的人是同步的。 生产者发信号消费者立刻就会收到。这样的做法虽然提高了效率,但是如果生产者和消费者一旦有一方出现问题就是影响另一方 …

OLBY应用APP说明支持

OLBY应用APP说明支持 OLBY是一款支持在线调节鱼缸灯光控制的APP 支持模拟日出日落,给用户在手持端也可以很好的操作控制设备 技术支持 zcj 331163.com