Kettle工具的基本使用[通俗易懂]

Kettle工具的基本使用[通俗易懂]2.1Kettle简介2.1.1Kettle概述Kettle是国外免费的开源轻量级ETL工具,是基于Java语言开发的,可以在Windows.Linux,UNIX系统上运行,且绿色不需安装,可用于各种数据库之间的连接。Kettle工具主要有四个组件组成,分别是Spoon,Pan,Kitchen以及Carte组件,具体功能如下:*Spoon为集成开发软件,用于构建作业和转换,执行或调试作业和转换,还可以用于监控ETL操作性能。*Pan以命令行形式执行Spoon生成的转…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

2.1 Kettle简介

  2.1.1 Kettle概述

 Kettle是国外免费的开源轻量级ETL工具,是基于Java语言开发的,可以在Windows.Linux,UNIX系统上运行,且绿色不需安装,可用于各种数据库之间的连接。

Kettle工具主要有四个组件组成,分别是Spoon,Pan,Kitchen以及Carte组件,具体功能如下:      *Spoon为集成开发软件,用于构建作业和转换,执行或调试作业和转换,还可以用于监控ETL操作性能。

  *Pan以命令行形式执行Spoon生成的转换程序。

  *Kitchen以命令行的方式执行Spoon生成的作业程序

  *Carte是一个重要组件,是基于Jetty的轻量级HTTP服务器,主要用于监控HTTP执行作业和转换的进度。

 2.1.2Kettle设计原则:易于开发,避免自定义开发,所有用户都可以通过用户界面完成,无命名限制,透明,灵活的数据通道,只映射需要映射的字段。

2.2 Kettle的下载安装

1、Kettle官网的下载地址为:http://sourceforge.net/projects/pentaho/files/Data%20Integration/,在官网下载安装包。

  2、解压文件,执行spoon.bat。

  3、配置Kettle(在网上搜索即有详细的引导步骤)。

  4、启动Kettle。

2.3 Kettle的基本概念

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

Kettle工具的基本使用[通俗易懂]

  2.3.1转换

转换是ETL方法解决中重要部分之一,主要用于数据抽取,转换和加载等等,其本质是一组图形化的数据转换配置逻辑结构。包括读取文件,过滤输出行,数据清洗或将数据加载到数据库中等步骤,转换中的步骤是通过跳连接的。下图为Kettle转换示例:

Kettle工具的基本使用[通俗易懂]

 以上转换示例是实现从数据库中读取数据,并把数据写到文本文件中,该转换包含了步骤,跳,注释以及数据行,具体介绍如下;

 1.步骤:转换中的基本组成部分,也可称之为控件,以图标的方式呈现。

       特性:每个步骤必须要有一个名字且这个名字在转换范围内唯一;

                 每个步骤都可以读,写数据行,生成步骤除外,该步骤只用于写数据;

                 步骤通过输入跳接收数据;

                 大多数步骤都有多个输出跳,一个步骤的数据发送可以设置为轮流发送和复制发送;

                在运行转换时,一个线程运行一个步骤和步骤的多个副本,所有步骤的线程几乎同时运          行,数据行就会连续流过步骤之间的跳。

2.跳:数据的通道,应用于连接两个步骤,实现将元数据从一个步骤传递到另一个步骤,支持分发和复制等方式。

    注:由于每个步骤都是单独的线程,当启动转换时,每个步骤都会创建各自的线程并接收和推送数据(这样并发程序最高),所以数据处理的顺序并不是按照节点连接箭头的顺序执行的。由于转换里的步骤都依赖于前一个步骤获取字段值,因此当创建新跳时,在转换里不能循环进行。

3.注释:以文本描述的方式呈现在作业中,只为增强流程的可读性,可放在任何一个位置。(注释并不参与程序的处理)

4.数据行:数据是以数据行形式沿着步骤流动。一个数据行是从零到多个字段的集合。Kettle中字段的数据类型一共有10种,具体见下图:

Kettle工具的基本使用[通俗易懂]

2.3.2 作业

一个作业包含一个或多个作业项,且都是按照某种顺序进行执行的。下图为一个作业示例:

 Kettle工具的基本使用[通俗易懂]

 该作业中包含了作业项,作业跳以及多路径和回溯,具体介绍如下:

1.作业项:作业的基本构成部分,也可称之为控件。

    注:作业项可以进行复制;作业项可以传递一个结果对象;作业项目是以串行方式执行的。

2.作业跳作业项之间的连接线,定义了作业的执行路径。

3.多路径和回溯:Kettle使用一种回溯算法执行作业里的所有作业项,且作业项的执行结果(真/假)决定执行的路径。

4.作业项结果

2.4 Kettle的基本功能

  2.4.1转换管理

   主要包括输入,输出,转换,应用,流程,脚本,查询,连接,检验,作业,映射,批量加载等功能。转换功能常用控件如下图所示:

Kettle工具的基本使用[通俗易懂]

Kettle工具的基本使用[通俗易懂] 2.4.2 作业管理

主要包括通用,邮件,文件管理,条件,脚本,批量加载等。下图描述Kettle作业常用功能的控件:

Kettle工具的基本使用[通俗易懂]

 Kettle工具的基本使用[通俗易懂]

2.4.3 数据库连接

数据库种类多,因此Kettle工具的数据库连接窗口包含多种数据库类型,具体如下图所示: 

 Kettle工具的基本使用[通俗易懂]

                                              一般标签界面

Kettle工具的基本使用[通俗易懂]

高级标签界面

 Kettle工具的基本使用[通俗易懂]

选项页面

 Kettle工具的基本使用[通俗易懂]

连接池页面

 Kettle工具的基本使用[通俗易懂]

 集群页面

注:本文为学习《数据清洗》——黑马程序员   后的学习笔记。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181193.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • redis连接时报错:Could not connect to Redis at 192.168.1.21:6379: Connection refused

    redis连接时报错:Could not connect to Redis at 192.168.1.21:6379: Connection refusedbrewinstallredis安装好redis用terminal连接redis查看状态时时出现错误:[root@admin2bin]#redis-cli-h192.168.1.21infoReplicationCouldnotconnecttoRedisat192.168.1.21:6379:Connectionrefused但是查看127.0.0…

    2022年6月3日
    40
  • vue关闭eslint检查_vue关闭eslint

    vue关闭eslint检查_vue关闭eslintEslint只是一个校验语法规则的插件,对于我们日常开发没什么用,需要关闭,只需两步:第一步:打开vue.config.js,如果没有就自己新建一个,在里面添加以下代码://关闭eslint语法验证lintOnSave:false,devServer:{//关闭eslint语法验证overlay:{warning:false,errors:false}},第二步打开.eslintrc文件,在里面rules添加以下

    2022年10月8日
    0
  • 作业调度和进程调度的辨析题_进程调度的功能有哪些

    作业调度和进程调度的辨析题_进程调度的功能有哪些很多学习完《操作系统原理》这门课程的小伙伴都应该对“FCFS(先到先服务)”、“SJF(短作业优先)”等调度算法原理比较熟悉。但是在实际做题的时候,往往一不小心就把概念搞错,不容易区分“作业调度”和“进程调度”的区别。下面我主要针对这两个概念进行解析并给出经典习题解答。PS:本博客并不详解每种调度算法的原理,因此有这方面需求的小伙伴可以直接pass了。1、作业调度作业调度又称为高级调度,频度较低。其主要工作是将位于外存后备队列中的某个(或某几个)作业调入内存,排在就绪队列上。注意了,这个时候仅仅是将作

    2022年9月29日
    0
  • 支持向量回归模型SVR

    支持向量回归模型SVR1.SVM回归模型的损失函数度量    回顾下我们前面SVM分类模型中,我们的目标函数是让12||w||2212||w||22最小,同时让各个训练集中的点尽量远离自己类别一边的的支持向量,即yi(w∙ϕ(xi)+b)≥1yi(w∙ϕ(xi)+b)≥1。如果是加入一个松弛变量ξi≥0ξi≥0,则目标函数是12||w||22+C∑i=1mξi12||w||22+C∑i=1mξi,对应的约束条

    2022年5月13日
    34
  • 如何运行一个vue项目(github安装项目依赖)

    1.cd到package.json目录中,执行npmoutdatedPackageCurrentWantedLatestLocation包名当前版本满足semer版本的最高版本(及在兼容的前提下能更新的最高版本)当前最高的版本红色:可以立即更新黄色:需要进行兼容,慎重更新全部更新在已有项目中,不建议采用全部更新,推荐使用npmupdate按需更新安装ncu,执行npminstall-gnpm-check-updates执行ncu-u

    2022年4月16日
    80
  • 什么是单点登录?单点登录的三种实现方式「建议收藏」

    什么是单点登录?单点登录的三种实现方式「建议收藏」单点登录SSO(SingleSignOn)说得简单点就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任。单点登录在大型网站里使用得非常频繁,例如像阿里巴巴这样的网站,在网站的背后是成百上千的子系统,用户一次操作或交易可能涉及到几十个子系统的协作,如果每个子系统都需要用户认证,不仅用户会疯掉,各子系统也会为这种重复认证授权的逻辑搞…

    2022年7月27日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号