您的位置:首页 > 健康 > 养生 > 域名停靠app盘她射门游戏下载_360建筑网会员_seo是指什么岗位_百度app免费下载安装

域名停靠app盘她射门游戏下载_360建筑网会员_seo是指什么岗位_百度app免费下载安装

2024/12/25 22:31:22 来源:https://blog.csdn.net/m0_63845988/article/details/143248515  浏览:    关键词:域名停靠app盘她射门游戏下载_360建筑网会员_seo是指什么岗位_百度app免费下载安装
域名停靠app盘她射门游戏下载_360建筑网会员_seo是指什么岗位_百度app免费下载安装

本章知识简介

主线A: 自连接查询;
主线B: 安装JDK与Kettle;
主线C: 使用Kettle工具.

==本章目标:==

1: 知道使用一张表可以实现自连接查询; [了解]注意: 左表、右表都是同一张表
2: 了解Kettle环境的安装流程; [了解]a.安装JDKb.安装Kettle
3: 熟悉使用kettle将txt数据转换为Excel数据的操作步骤; [重点]a.新建转换b.构建流图c.配置组件d.保存并启动执行
4: 熟悉使用kettle将Excel数据转换为MySQL数据的操作步骤; [重点]a.新建转换   # 配置MySQL与Kettle连接, JNDIb.构建流图c.配置组件d.保存并启动执行
5: 熟悉使用Kettle进行MySQL表间转换的操作步骤。 [了解]a.新建转换b.构建流图c.配置组件d.保存并启动执行

Kettle介绍

[了解]什么是Kettle

==目标:==了解什么是ETL以及Kettel是开源的ETL工具

在大数据开发过程中,有一个【ETL开发工程师】的工作岗位,工作职责是转换、处理各种不同类型的数据格式。

ETL(Extract-Transform-Load的缩写),指的是:数据抽取、转换、加载的过程。

当要了解并掌握使用一款ETL工具时,必不可少的,Kettle就是一个强大的ETL工具。

Kettle是一款开源的ETL工具,由Java语言开发,可用于数据库间的数据迁移。

并可以在Windows、Linux、Unix等系统中运行,运行时有图形界面,也有命令脚本,还支持二次开发。

Kettle中文名称叫水壶,该项目的主程序员MATT希望把各种数据放到一个壶里,然后以一种指定的格式流出。

通俗地说,Kettle就是用于处理各种不同格式的数据,并按特定格式输出。

kettle官网是 Home - Hitachi Vantara

github地址是 https://github.com/pentaho/pentaho-kettle

当要搭建Kettle开发环境时,要求如下:

(1)jdk1.8.0版本+

(2)MySQL 8.0+

(3)pdi-ce-9.0版本

说明:稍后来搭建Kettle环境。

==总结:==

(1)ETL指的是数据抽取、转换、加载的过程,而Kettle是ETL开发中常见的一个工具;

(2)注意:Kettle底层是使用()语言开发的。A、Python;==B、Java==。

[掌握]安装JDK

==目标:==掌握JDK的安装流程。

由于Kettle是基于java开发的,因此需要安装java环境,并配置JAVA_HOME环境变量。注意:

(1)建议安装JDK1.8及以上,因为Kettle 7.0后的版本不支持低版本的JDK;
(2)本课程以jdk-8u241-windows-x64版本为例进行安装说明。

说明:Java官网Java Downloads | Oracle

安装JDK时,有两个重要步骤:

(a)安装JDK

(b)配置JDK的环境变量

说明:当安装完JDK且要让JDK生效,需要对JDK进行配置JAVA_HOME和Path环境变量。

(a)安装JDK的步骤如下:

(1)找到资料/安装包中的jdk软件文件,双击打开

(2)点击「下一步」按钮

(3)将路径修改为C:\opt\jdk1.8.0_241,点击「确定」按钮

(4)点击「下一步」,等待进度条完成

 (5)在新弹出的窗口中,点击「更改」按钮,将JRE的安装路径修改为 c:/opt/jre1.8.0_241

(6)点击「关闭」完成安装

(b)配置JDK环境变量的步骤如下:

(1)我们需要给计算机配置环境变量JAVA_HOME。

作用:JAVA_HOME指向的jdk的安装目录,Kettle等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。

配置方法:在系统变量里点击新建,变量名填写JAVA_HOME,变量值填写JDK的安装路径。

(2)找到jdk的安装目录,复制其路径,再找到【此电脑】右键点击选择属性,弹出如下界面,选择高级系统设置,不同版本系统位置可能不太一样,耐心寻找一下。

(3)进入高级系统设置之后,点击【环境变量】按钮,即可进入环境变量配置界面。

(4)找到【系统变量】,选择【新建】,将JAVA_HOME填写到变量名中,将刚刚复制的jdk安装路径粘贴到变量值内,点击确定完成环境变量添加。

(5)在系统变量里找到Path变量,这是系统自带的,不用新建。双击Path,由于原来的变量值已经存在,故应在已有的变量后加上:

%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin    # 可不添加

(6) 检测环境变量是否配置成功,在底部搜索栏输入cmd,按Enter键唤出终端窗口。

输入【java】、【javac】、【java -version】,输出如下内容,则表示配置成功。

例如,一起来完成:

(1)在电脑中安装JDK工具;

(2)配置JAVA_HOME、Path环境变量;

(3)使用命令验证是否成功安装JDK。

==总结:==

(1)若要启动Kettle环境,则必须要安装JDK工具;

(2)请问,安装JDK时除了要配置Path变量外,还必须配置()变量。A、ClassPath;==B、JAVA_HOME==;

[掌握]Kettle安装与启动

==目标:==掌握如何安装与启动Kettle。

当成功安装了JDK后,就可以安装Kettle软件了。

Kettle官网Home - Hitachi Vantara

此外,也可以到网站【https://sourceforge.net/projects/pentaho/files/】中下载Kettle。

说明:为统一管理与使用,Kettle使用老师下发的软件文件。

安装Kettle的步骤如下:

(1)先将kettle下载到本地

(2)解压Kettle到一个非中文目录下

(3)进入解压后的文件夹data-integration中,双击Spoon.bat,用于启动kettle。

(4)当使用Mac OS系统安装与启动Kettle时,解压操作类似,启动时,需要使用命令:

sh ./spoon.sh

说明:详细操作文档请查看【Mac OS系统安装Kettle详解】。

另外的,需要注意的是:

(1)由于kettle需要连接数据库,因此需要下载对应的数据库驱动;例如:MySQL数据库需要下载mysql-connector-java.jar(在Windows中安装MySQL时已经自动安装)
(2)本课程基于pdi-ce-9.0.0.0-423版本进行介绍,低版本在使用上可能略微有区别。

例如,一起来完成:

(1)在电脑中解压Kettle压缩文件到一个非中文目录下;

(2)启动Kettle并进入欢迎界面,观察效果。

==总结:==

(1)请问:安装Kettle前必须要先安装jdk以及配置环境变量,这句话对吗?==A、对==;B、错;

(2)Kettle是使用java语言开发的一款开源的ETL工具,常用于大数据开发中的数据迁移与转换。

[了解]转换数据

==目标:==了解使用Kettle转换数据的操作步骤。

在大数据开发中,数据并不是单一形式的,我们常见的数据形式有很多。

比如:Excel、TXT、CSV等数据样式,以及MySQL数据库、Oracle、Hive等服务中的数据。

那么,为了能够让数据在同一个空间或平台上进行运算、处理、统计、分析、预测等工作,就需要频繁的对数据进行转换。

此时,Kettle就可以提供了这样一种快速、可靠的可视化的数据转换操作。

Kettle可以在多种数据源之间进行快速转换,比如把txt转换为Excel、把Excel转换为MySQL等。

Kettle转换数据的操作可以是多种多样的,但它的操作步骤几乎都是一致的。

Kettle基本开发步骤:

(1)新建转换/作业;
(2)构建Kettle的数据流图;
(3)配置数据流图中的各个组件;
(4)保存并启动执行。

说明:

简单地说,就是输入、输出的操作。

==总结:==

(1)当使用Kettle来转换不同格式的数据文件时,优先要();==A、新建转换==;B、新建项目;

(2)注意:使用Kettle的基本步骤有:新建转换、构建流图、配置组件、保存并启动执行。

将txt转换为Excel文件

[掌握]新建转换与流图

==目标:==掌握转换与流图的新建处理。

需求描述:小A现在有一个txt文件,文件内容如下:

id,name,age,gender,province,city,region,phone,birthday,hobby,register_date
392456197008193000,张三,20,0,北京市,昌平区,回龙观,18589407692,1970-8-19,美食;篮球;足球,2018-8-6 9:44
267456198006210000,李四,25,1,河南省,郑州市,郑东新区,18681109672,1980-6-21,音乐;阅读;旅游,2017-4-7 9:14
892456199007203000,王五,24,1,湖北省,武汉市,汉阳区,18798009102,1990-7-20,写代码;读代码;算法,2016-6-8 7:34
492456198712198000,赵六,26,2,陕西省,西安市,莲湖区,18189189195,1987-12-19,购物;旅游,2016-1-9 19:15
392456197008193000,张三,20,0,北京市,昌平区,回龙观,18589407692,1970-8-19,美食;篮球;足球,2018-8-6 9:44
392456197008193000,张三,20,0,北京市,昌平区,回龙观,18589407692,1970-8-19,美食;篮球;足球,2018-8-6 9:44

我们需要使用Kettle将这个文件中的数据抽取出来,然后加载到Excel中。

想要进行数据转换,我们首先要做的事情就是新建一个转换文件,我们点击窗口上的文件 >> 新建 >> 转换。

然后,将需要的转换方式拖拽到右侧面板并运行即可完成转换,比如:输入文本文件、输出Excel文件。

当要使用Kettle来进行数据处理时,要来构建Kettle的数据流图,也就是用可视化操作把要做的事情【输入-输出】列出来。

(1)将左边的核心对象中的【输入】文件夹下的【文本文件输入】 拖拽到中间空白区域。

(2)从输出文件夹中将【Excel输出】组件拖拽到中间空白区域。

(3)按住Shift键,点击【文本文件输入】组件,移动鼠标到【Excel输出】,然后释放鼠标,这样就可以将两个组件连接到一起。

例如,一起来完成:

(1)新建一个转换处理,并用于将txt数据转换为Excel文件;

(2)构建Kettle的数据流图:文本文件输入、Excel输出;

(3)最后将流图组件连接在一起。

==总结:==

(1)当需要转换不同格式的数据前,要记得新建一个转换;

(2)请问:当要转换数据格式时,要提前确认好:输入文件格式和输出文件格式,这句话对吗?==A、正确==;B、错误。

[掌握]配置流图中的各个组件

==目标:==掌握将txt转换为Excel的流图组件配置。

当把数据流的转换方式与转换方向确定后,接下来要做的就是:配置每个组件,并对参数进行微调。比如:

(a)配置文件文本输入组件
(b)配置Excel输出组件

(a)配置文件文本输入组件

(1)双击【文本文件输入】组件,在弹出窗口中点击「浏览」按钮。

(2)选择「资料/测试数据」中的 user.txt 文件。

(3)点击「增加」按钮,将文件加入到要抽取的数据中来。注意:不点增加按钮,将不会抽取数据。

(4)点击「内容」选项卡,将分隔符修改为,逗号(注意是英文状态的逗号),将编码方式修改为:UTF-8。

(5)点击「字段」选项卡,再点击「获取字段」按钮,可以读取到txt文件中的所有字段。

(6)点击「预览记录」按钮,查看Kettle是否能够读取到 user.txt 中的数据。

当能成功显示时,预览内容为:

(7)点击「确定」按钮保存,此时【文本文件输入】组件配置完成。

(b)配置Excel输出组件

(1)双击【Excel输出】组件,在弹出窗口中点击「浏览」按钮。

(2)点击「内容」选项卡,设置要将Excel文件输出到具体的路径,然后点击确定,再删除文件后缀xls。

(3)点击「字段」选项卡,再点击「获取字段」,将Integer类型的格式设置为0,表示只输出不带小数点的数字。

例如,一起来完成:

(1)将本地数据user.txt配置到【文本文件输入】组件中,并设置相应参数;

(2)对【Excel文件输出】组件进行相关参数的配置;

(3)注意:若参数值有问题,可进行微调。

==总结:==

(1)当要把txt转换为Excel文件时,在输出端要配置为();A、文本文件输出;==B、Excel输出==;

(2)注意:把txt转换为Excel文件时,还得多关注下txt文本内容的格式,否则很容易转换失败。

[掌握]保存并启动执行

==目标:==掌握如何保存转换与启动执行操作。

当已成功建好转换和配置好流图后,则可以准备执行程序。操作如下:

(a)先保存转换方式
(b)再执行转换程序

(1)首先,点击工具条上方的保存按钮,或者按快捷键Ctrl + S。

(2)Kettle会提示让我们保存该数据流图(转换),此时选择保存到指定位置即可,然后点击「保存」按钮即可。

(3)点击工具栏上的执行按钮启动执行。当执行完成后,组件的右上角有一个绿色的对勾。

准备开始执行转换操作:

(4)执行完后,我们可以到指定的位置中,查看已经转换完成的Excel文件,并可以看到里面的内容。

例如,一起来完成:

(1)保存转换与流图组件到本地,并准备启动执行;

(2)观察执行的结果,并对有问题的数据参数进行微调。

==总结:==

(1)当要保存转换时,保存生成的是一个以()结尾的文件;A、.xls;==B、.ktr==;

(2)注意:当各个组件都已配置无误后,启动执行即可成功,否则会出错。

将Excel转换为MySQL

[了解]提出需求与准备工作

==目标:==了解在Kettle中如何配置MySQL?

需求描述:公司来了有个漂亮的程序员小姐姐叫小花,她刚大学毕业,项目经理安排她这样一项工作:有如下一个Excel文件user.xls,这个文件内容是这样的。

项目经理想要让她将这些数据导入到MySQL中。

小花刚来,急得团团转,不知所措,机会来了。

最终需求:需要从Excel中将这些用户数据,使用Kettle抽取到MySQL数据库中。

为了完成本案例,我们需要准备以下几个工作:

(a)找到待处理的Excel文件
(b)在MySQL数据库中创建数据库

说明:对于创建数据库,优先考虑使用命令行先创建成功。

(a)找到待处理的Excel文件

在资源文件夹中,可以找到user.xlsx文件

(b)在MySQL数据库中创建数据库

为了方便将数据抽取到MySQL中,我们要创建一个名字叫kettle_demo的数据库,后续Excel中的数据会加载到该数据库的表中。

(1)在DataGrip中,右键点击MySQL连接,选择New >> Query Console

(2)在Datagrip中,书写SQL语句并运行,我们可以看到kettle_demo数据库名称就已经创建好了。

# 创建新的数据库,数据库名称为kettle_demo,字符集为utf8
CREATE DATABASE kettle_demo CHARACTER SET utf8;

(3)在Kettle中,加载MySQL驱动。

Kettle要想连接到MySQL,必须要安装MySQL驱动,就好比我们装完操作系统要安装显卡驱动一样。

加载MySQL驱动文件需要完成:

(A)将资料中的MySQL jdbc驱动包【mysql-connector-java-8.0.13.jar】导入到 【data-integration/lib】中。

(B)找到data-integration\simple-jndi\jdbc.properties文件编辑,在末尾加上连接信息:

(C)添加完成后,重启Kettle即可。

在jdbc.properties文件中末尾添加编辑信息如下:

MYSQL_DB/type=javax.sql.DataSource  
MYSQL_DB/driver=com.mysql.cj.jdbc.Driver
MYSQL_DB/url=jdbc:mysql://localhost:3306/kettle_demo?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT
MYSQL_DB/user=root
MYSQL_DB/password=123456

说明:MySQL用户名、密码以及数据库名称,可根据实际情况进行更改。

例如,一起来完成:

(1)新建一个数据库班级kettle_demo,并设定编码为utf8;

(2)将MySQL驱动文件拷贝至lib目录下;

(3)将JNDI的编辑信息添加到jdbc.properties文件末尾,并重启Kettle。

######################创建存放数据的数据库#############################
# 1.创建库
create database if not exists bj96db_kettle_demo charset utf8;
# 2.查看

==总结:==

(1)注意:在将Excel转换为MySQL数据前,要先做好配置MySQL的操作;

(2)当使用Kettle成功连接MySQL后,可以使用Kettle自动创建数据表。

==休息一下,15:45继续上课。==

[掌握]新建转换与流图

==目标:==掌握Excel转换MySQL的流图处理。

想要进行数据转换,我们首先要做的事情就是新建一个转换文件,点击窗口上的文件 >> 新建 >> 转换。

然后,将需要的转换方式拖拽到右侧面板中。

要使用Kettle来进行数据处理,首先要做的是构建Kettle的数据流图。

(1) 从左边的核心对象中,分别拖入「输入/Excel输入」、「输出/表输出」两个组件到中间区域。

(2)然后,按住Shift键,在「Excel输入」组件上点击鼠标左键,拖动到「表输出」组件上,连接两个组件。

例如,一起来完成:

(1)新建一个转换处理,并用于将Excel数据转换为MySQL数据;

(2)构建Kettle的数据流图:Excel输入、表输出;

(3)最后将流图组件连接在一起。

==总结:==

(1)当要把数据转换为MySQL时,输出时选择组件为();==A、表输出==;B、SQL输出;

(2)注意:在数据转换前,一定要提前确认好数据输入、输出的具体格式。

[掌握]配置流图中的各个组件

==目标:==掌握将Excel转换为MySQL的流图组件配置。

此时,就需要来配置数据流图中的各个组件:

(a)配置Excel输入组件
(b)对表输出组件进行配置

说明:在这里,要配置将数据加载到哪个MySQL中。

(a)配置Excel输入组件

(1)首先,双击【Excel输入】组件,会弹出一个对话框,我们可以在该对话框中配置信息。

(2)因为此处要抽取的Excel文件为Excel 2007版本,所以指定表格类型为Excel 2007 XLSX (Apache POI)。

(3)随后,我们需要找到要抽取的那个Excel文件,点击「浏览」按钮,找到「资料/测试数据/user.xlsx」文件。

(4)再点击旁边的「增加」按钮,切记:一定要点击增加按钮,否则没有效果!

(5)在弹出菜单中,点击「工作表/Sheet1」工作簿,并点击「>」按钮移动到右边。

(6)点击「字段」选项卡,点击「获取来自头部数据的字段...」按钮,Kettle会从Excel中读取第一行字段名称。

(7)将age字段的格式设置为#,register_date的格式设置为yyyy-MM-dd HH:mm:ss。

(8)点击「预览记录」按钮,可以查看抽取到的数据。

(9)点击「确定」按钮,并进行保存刚刚的操作。

(b)对表输出组件进行配置MySQL信息

要使用Kettle操作MySQL,必须要建立Kettle与MySQL的连接,否则Kettle也不知道操作哪个MySQL库。

(1)双击「表输入」组件,会自动弹出配置窗口,点击「新建」按钮。

(2)此时,就需要来配置MySQL连接

(A)输入连接名称,此处可自定义名称;
(B)在连接类型列表中,选择MySQL;
(C)输入连接方式:JNDI
(D)JNDI名称填写:MYSQL_DB

(3)点击【测试】按钮,测试Kettle是否能够正确连接到MySQL。

(4)点击确认保存,到这里数据库连接就应该创建好了。

当然了,我们也可以使用Kettle在MySQL中自动创建数据表。

此时,继续使用Kettke自动在MySQL中创建表。

(1)输入目标表的名称为:t_user,后续Kettle将在MySQL中创建一张名为 t_user 的数据表。

(2)点击下方的「SQL」按钮,可以看到Kettle会自动帮助我们生成MySQL创建表的SQL语句,我们将age和gender字段的数据类型改为INT类型。

(3)点击【执行】按钮。Kettle会自动执行该SQL脚本。执行完后,便可以在DataGrip中查看到t_user表。

(4)点击「确定」按钮,保存配置。

例如,一起来完成:

(1)将本地Excel表数据user.xlsx配置到【Excel文件输入】组件中,并设置相应参数;

(2)对【表输出】组件进行相关参数的配置;

(3)注意:若参数值有问题,可进行微调。

==总结:==

(1)注意:在把Excel数据转换为MySQL时的Excel输入的Integer字段数据要设定为()格式;A、*;==B、#==;

(2)通常情况下,配置流图的顺序都是先配置输入端、再配置输出端,并在执行过程中再对参数进行调整。

[掌握]保存并启动执行

==目标:==掌握如何保存转换与启动执行操作。

当已成功建好转换表数据和配置好流图后,则可以准备执行程序。

(1)点击保存按钮进行保存转换操作。

(2)点击工具栏上的执行按钮启动执行操作。

准备开始执行转换操作:

(3)执行成功后,可以看到以下界面,说明Kettle的转换已经执行成功!

(4)如果要确认执行结果是否成功,则需要到DataGrip中查看,双击t_user表,可以看到Excel中的数据都已经抽取到了MySQL。

例如,一起来完成:

(1)保存转换与流图组件到本地,并准备启动执行;

(2)观察执行的结果,并查看是否已成功添加数据。

==总结:==

(1)当配置流图准确无误后,启动执行即可成功完成数据格式的转换处理;

(2)思考:若要多次把数据转换到MySQL中,是否需要多次设置MySQL连接呢?

MySQL表与表数据转换

[了解]共享数据连接

==目标:==了解如何设置数据连接共享?

为了多次转换数据格式时,连接数据库更方便,可以在Kettle中,将一个数据库进行共享,这样其他的Kettle转换就都可以复用该数据库连接了。

共享数据库连接的具体操作步骤如下:

(1)在转换中,点击「主对象树」,点击【DB连接】可以查看到数据库连接名(如果连接已经存在,则无需创建)

(2)右键单击需要的数据库连接,选择「共享」

(3)发现刚刚选择的数据库连接已经变成黑体字,说明已经共享成功。

此时就可以发现在新建的转换中,能看到有该数据库连接了。这样就避免了每次我们都需要配置该数据库连接。

例如,一起来完成:

(1)将数据库连接进行设置共享;

(2)观察成功设定共享数据的效果。

==总结:==

(1)在实际应用中,想要简化数据连接的操作,则可以进行连接共享;

(2)请问:当成功共享了数据连接后,再转换为MySQL数据时,则可以直接使用该连接,这句话对吗?==A、对==;B、错。

[掌握]新建转换与流图

==目标:==掌握MySQL转换MySQL的流图处理。

需求描述:前面我们已经将Excel中数据抽取到了MySQL的t_user表中,现在有了新需求,要将MySQL数据库中的 t_user 表中的数据抽取出来,加载到另外一张表 t_user1中。

当想要进行数据转换时,我们首先要做的事情就是新建一个转换文件,我们点击窗口上的文件 >> 新建 >> 转换。

然后将需要的,转换方式拖拽到右侧面板并运行即可完成转换。

要使用Kettle来进行数据处理,先要构建Kettle的数据流图。

(1)从核心对象的输入组件中,将「表输入」组件拖拽到中间的空白处。

(2)从输出中将「 表输出」组件拖拽到中间空白处。

(3)按住Shift键,并按住鼠标左键点击【表输入】组件,并拉动鼠标,移动到【表输出】组件,松开鼠标即可位置流图连接。

例如,一起来完成:

(1)新建一个转换处理,并用于将MySQL数据转换为MySQL数据;

(2)构建Kettle的数据流图:表输入、表输出;

(3)最后将流图组件连接在一起。

==总结:==

(1)当把MySQL表与表之间转换数据时,可选择流图组件:()、表输出;A、SQL输入;==B、表输入==。

[掌握]配置流图中的各个组件

==目标:==掌握将MySQL转换为MySQL的流图组件配置。

此时,就需要来配置数据流图中的各个组件:

(a)配置表输入组件
(b)对表输出组件进行配置

说明:在这里,要配置将MySQL的数据表加载到哪个数据表中。

(a)配置表输入组件,步骤:

(1)双击表输入组件,在弹出对话框中选择「获取SQL查询语句」。

(2)选择 t_user 表,点击确定。

(3)在弹出对话框中选择「否」。

(4)点击「预览」按钮,查看是否能够从MySQL读取数据

(5)可以看到,Kettle中可以查看到 t_user 表中的数据。

(b)对表输出组件进行配置,步骤:

(1)双击表输出组件,在目标表输入t_user1。

(2)点击[SQL]按钮,让Kettle中自动创建表结构。

(3)可以看到,Kettle自动为我们生成了创建表的SQL语句,如有需要可以简要更改字段类型。

(4)点击执行后,可以查看到已成功创建数据表。

(5)我们可以到DataGrip中看到t_user1已经成功创建,但表中没有任何数据。

(6)点击「确定」按钮,并进行保存表输出信息。

例如,一起来完成:

(1)将MySQL的用户表配置到【表输入】组件中,并设置相应参数;

(2)对【表输出】组件进行相关参数的配置,并设定新存入数据的数据表;

(3)注意:若参数值有问题,可进行微调。

==总结:==

(1)注意:当在转换表数据时,表字段的类型要保持一致;

(2)在配置组件时,发现字段类型有问题时,可以对类型进行必要的修改。

[掌握]保存并启动执行

==目标:==掌握如何保存转换与启动执行操作。

当已成功建好表输入输出数据和配置好流图后,则可以准备执行程序。

(1)点击保存按钮,可以保存该转换。

(2)点击【执行】按钮执行,如果看到每个组件上都打上了绿色的对号,说明转换已经执行成功。

(3)再打开DataGrip,刷新下表格,可以看到数据已经加载到t_user1中。

例如,一起来完成:

(1)保存转换表输入输出与流图组件到本地,并准备启动执行;

(2)观察执行的结果,并查看数据表是否已成功添加数据。

==总结:==

(1)MySQL表间转换使用到的组件为:()、表输出;A、Excel输入;==B、表输入==;

(2)数据转换的步骤是:新建转换、构建kettle的数据流图、配置数据流图中的各个组件、保存并启动执行。

常见的其他转换操作

[了解]插入/更新组件

==目标:==了解插入/更新组件的使用方法。

对于插入/更新组件,指的是:能够将Kettle抽取的数据,与某个表的数据进行对比,如果数据存在就更新,不存在就插入。

当要插入/更新数据时,需要注意几个点:

(1)先清空t_user1表中的数据

(2)新建转换,并建立数据流图

接着,需要来配置Kettle数据流图中的【表输入】组件,操作步骤:

(1)双击表输入组件,点击获取SQL查询语句,选择t_user1表。

(2)点击预览按钮,查看Kettle是否能够从MySQL中读取数据。

继续来配置插入/更新组件,操作步骤:

(1)双击插入/更新组件,点击浏览按钮,找到t_user1表。

(2)添加用来查询的关键字,设置表字段为:id,比较符为:=,流里的字段为:id。

(3)点击「获取和更新字段」,这样Kettle将会自动更新、或插入所有的字段。

最后,一起保存并启动执行Kettle转换,操作步骤:

(1)保存并启动该Kettle转换。

(2)在DataGrip中先修改t_user中张三的年龄改为22,然后执行转换后,刷新t_user1表,发现张三的年龄已经更新为22。

例如,一起来完成:

(1)先试着到【表输入】与【表输出】组件中进行多次执行转换,观察效果;

(2)接着,先清空新建的存数据的用户表信息;

(3)新建【表输入】与【插入/更新】组件后完成配置,再执行转换并观察结果;

(4)给【表输入】的数据表中添加一条数据,再执行转换,观察数据效果。

insert into【xxx表】
values('114456198712198986','张敏敏',21,0,'广东省','深圳市','南山区','17503046666','1999-02-14','Cosplay;短视频','2019-9-10 19:11');

########################插入或更新#####################################
# 使用库
use bj96db_kettle_demo;
# 清空数据
truncate table bj96_tb_user222;
# 插入数据
insert intobj96_tb_user
values('114456198712198986','张敏敏',21,0,'广东省','深圳市','南山区','17503046666','1999-02-14','Cosplay;短视频','2019-9-10 19:11');

==总结:==

(1)【插入/更新】组件能够将Kettle抽取的数据,与某个表的数据进行对比,如果数据存在就更新,不存在就插入;

(2)插入/更新组件可以设置比较字段,比较方式等,通常比较方式设定为()。A、is;==B、===。

[了解]switch/case组件

==目标:==了解如何使用switch/case组件。

有一天,体育老师要让班上的男女同学分别排成两队,分别是:男同学一队,女同学一队。

体育老师要做一件非常重要的事情:判断学生是男孩,还是女孩,然后让他们各自到指定的队伍中。在Kettle中,也可以做到这个效果!

在Kettle中,可以使用switch/case组件来做类似于体育老师要做的事情——判断。

注意:switch/case组件存在于【流程】中。

需求描述:要从t_user表中读取所有用户数据,并将性别为男的用户导出到一个Excel、性别为女的导出到另外一个Excel。

先来构建Kettle数据流图,操作步骤如下:

(1)将【表输入】组件拖拽到中间的空白区域。

(2)从流程文件夹中,将 Switch/case 组件拖拽到中间的空白区域。

(3)再分别拖入两个Excel输出组件并对组件重命名。

(4)按住shift键,将组件按照下图方式连接起来。

接着,一起来配置表输入组件。

(1)双击表输入组件,指定从t_user表中抽取数据并预览。

另外的,要来配置switch/case组件。

(1)此处要指定,按照性别来判断并输出到Excel文件。需要设置Switch字段为gender,在Case值列表中将值分别改为男、女。

如果gender是男的话,则将数据加载到 Excel输出 - 男,如果gender是女的话,将数据加载到 Excel输出 - 女。

然后,就需要来配置Excel输出组件,操作步骤:

(1)双击Excel输出-男组件,指定输出到指定的文件夹及文件名。

(2)点击字段并获取字段,将age字段的格式设置为0。

(3)双击Excel输出-女组件,指定输出到指定的文件中。

(4)点击字段并获取字段,将age字段的格式设置为0。

最后,再来启动执行,操作步骤:

(1)保存并启动该Kettle转换。

(2)执行完毕后,Kettle会自动生成两个Excel文件,一个文件保存了性别为男的所有用户,另一个文件保存了性别为女的所有用户。

例如,一起来完成:

(1)新建转换与数据流图:表输入、switch/case、Excel输出;

(2)对数据流图进行配置处理,设置1为男、0为女;

(3)保存转换并启动,观察执行效果。

==总结:==

(1)我们会发现,switch/case组件提供了()的实现;A、条件判断;B、循环;

(2)一般地,可以简单的把switch/case组件当作是where条件筛选处理。

[了解]SQL脚本执行

==目标:==了解如何执行SQL脚本?

在Kettle中,也可以使用Kettle中专门的SQL脚本组件来执行SQL脚本信息。

需求描述:使用Kettle执行SQL脚本,并将t_user1表中的数据清空。

接着,一起来看看使用Kettle执行SQL脚本的操作步骤:

(1)首先,将脚本文件夹下的【执行SQL脚本】拖拽到右侧的空白中。

(2)继续配置Kettle数据流图组件参数,我们双击【执行SQL脚本】组件,选择要连接的数据库,以及要执行的SQL命令。

我们要将t_user1表中的数据清空,所以脚本中要执行的语句如下:

TRUNCATE TABLE t_user1;

(3)保存并启动该Kettle转换并执行。

(4)当执行完毕后,我们发现t_user1中的数据已经被完全清除掉了,说明Kettle已经帮助我们执行了SQL脚本。

例如,一起来完成:

(1)创建转换与数据流图:执行SQL脚本组件;

(2)清空新存放数据的用户表信息,执行脚本,并观察效果。

truncate table bj96_tb_user222;

==总结:==

(1)在应用中,可以使用Kettle执行一段简要的SQL脚本,而复杂的脚本尽可能使用SQL语句;

(2)在操作中,会发现Kettle工具自动化程度较高。

[了解]job作业开发

==目标:==了解Kettle作业的开发流程。

需求描述:使用Kettle每5秒钟执行一次转换处理,并将Excel中的数据抽取并加载到MySQL中。

要实现这个需求,我们需要学习Kettle的job作业。

Kettle中的作业(job)定义了转换应该如何执行,同时可以配置转换来进行定时任务。

首先,需要来创建作业并构建数据流图,操作步骤如下:

(1)点击文件,选择新建/作业按钮,就可以创建作业了。

(2)将核心对象中,通用文件夹下的Start组件拖拽到中间的空白区域。

(3)将通用文件夹的「转换」组件拖拽到中间的空白区域。

(4)将通用文件夹中的「成功」组件拖拽到中间的空白区域。

(5)同样使用Shift键,将几个组件都连接起来。

接着,需要来一起配置作业流图组件,操作步骤如下:

(1)到配置转换这里,选择作业中要执行的【转换】,此处选择之前开发好的excel_to_mysql.ktr即可。

(2)要注意的是:此处要先保存作业,然后再配置转换。

(3)然后,需要配置Start启动组件。

(4)最后,再启动并执行job作业,执行程序后,观察数据库中的数据是否会5秒钟增加一次。

例如,一起来完成:

(1)创建转换与数据流图:新建job作业、Start、转换、成功,并配置组件信息;

(2)实现每隔5秒把Excel中的数据自动转换到MySQL中,并观察数据的变化效果。

==总结:==

(1)Kettle中的作业(job)定义了转换应该如何执行,并能配置转换进行定时任务;

(2)请问:在配置作业前,要先保存作业,然后再配置转换,这句话正确吗?==A、正确==;B、错误。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com