Kettle的安装与基本使用

news2025/2/23 10:36:05

什么是Kettle?

        Kettle最早是一个开源的ETL(Extract-Transform-Load的缩写)工具,全称为KDE Extraction, Transportation, Transformation and Loading Environment。是一个功能丰富的ETL工具,它允许用户轻松地进行数据抽取、转换和加载。后来Kettle重命名为Pentaho Data Integration 。它由Java开发,支持跨平台运行,Kettle是一个实现ETL开发的一款开发工具,Spoon是Kettle工具提供的图形化界面。

Kettle的核心特性

Kettle提供了一系列的特性,使其成为ETL领域的佼佼者:

  1. 直观的图形用户界面:通过拖放组件来构建数据转换流程。
  2. 丰富的插件库:支持各种数据源和目标系统。
  3. 强大的数据转换能力:提供多种数据清洗和转换操作。
  4. 可扩展性:支持自定义脚本和插件开发。
  5. 高性能:优化的数据处理引擎,支持大规模数据集。

安装JDK

因为Kettle工具是用java语言开发的,要想运行起来就必须安装jdk。

安装

百度云盘下载链接 提取码: qjyd
jdk-8u221-64bit.exe

安装过程

JDK安装配置教程-CSDN博客

安装kettle

解压kettle

百度云盘下载链接  提取码: akgv

pdi-ce-9.1.0.0-324.zip

kettle 需要解压到一个非中文路径下。

因为kettle改名字了,叫做pdi

image.png


更改一下图标,更好看。

修改字符集

在安装目录下找到spoon.bat 文件

image.png

添加 如果打开软件重新启动一下

"-Dfile.encoding=UTF-8"

每次启动的时候,记得使用管理员权限启动。

实战

Kettle 是ETL 工具,玩数据的工具  数据倒来倒去。
Sqoop 、Flume 、DataX 都是一类的工具。

1)将txt数据导⼊到excel 中

选择 【转换】--> 【新建】,拖拽 【⽂本⽂件输⼊】和 【Excel输出】,摁住shift键,拖拽连接两者。

双击 【文本文件输入】

点击字段:

点击预览数据:

点击 字段 --> 获取字段

点击运行,开始转换,此时第一次会弹出让你保存这个转换的脚本,选一个地方保存一下

修改 Excel 输出:

出现这个错误,就说明 文件被打开了,需要关闭掉

如果选择的是 MS XLS,在输出的时候,可以选择使用高版本的格式比如 xlsx

点击复制。

选择保存的文件名字和后缀

以上演示的是传统数据的导入导出。

2)本地安装MySQL

查看mysql版本

如果本地已经有了mysql,可以跳过以下操作。

安装MySQL

本地安装MySQL配置环境变量-CSDN博客

安装MySQL图形化工具

Navicat Premium

        Navicat Premium是一款数据库管理工具,是一个可多重连线资料库的管理工具,它可以让你以单一程式同时连线到 MySQL、SQLite、Oracle、MariaDB、Mssql、及PostgreSQL 资料库,让管理不同类型的资料库更加的方便。

Navicat Premium 17安装教程

 DataGrip

        DataGrip 版是由JetBrains公司推出的数据库管理软件,DataGrip支持几乎所有主流的关系数据库产品,如DB2、Derby、H2、MySQL、Oracle、PostgreSQL、SQL Server、Sqllite及Sybase等,并且提供了简单易用的界面,开发者上手几乎不会遇到任何困难。

DataGrip2023安装教程

3)将excel表格中的数据导⼊到mysql中

开始设置Excel输入:

通过预览数据,发现数据有点问题,需要修复一下:

要将输入导入到mysql中:

最后发现没有数据库,所以需要创建一个数据库:

此处的连接名称最好不要是中文的,因为中文的连接如果【共享】之后可能会出现xml中的中文问题。

点击测试,出现错误:

将这个jar包,放入到kettle中:

由于我们上文安装的是MySQL8.0的数据库,使用如下驱动包。

拷⻉到 pdi这个软件的lib ⽬录下:

然后重启 kettle 这个软件,关掉,再进⼊就是重启了。

假如一直连不上,可以使用低版本的mysql,然后使用低版本的驱动。

将数据库连接【共享】,共享的意思是,这个数据库连接在很多地方都可以重复使用。

重启完,报另一个错误:

解决方案:

serverTimezone = GMT+8

启动:

useUnicode=true
characterEncoding=UTF-8

进行sql语句的微调:

CREATE TABLE t_user
(
  id varchar(255)
, name varchar(255)
, age int
, gender int
, province varchar(255)
, city varchar(255)
, region varchar(255)
, phone varchar(255)
, birthday date
, hobby varchar(255)
, register_date varchar(255)
);

数据库连接可以共享:

右键,选择 “共享”

当分享的时候报错:

问题的原因是:连接的名字含有中文。

修改此文件夹下的share.xml 文件

如何修改呢?

然后重启Kettle.

进入到数据库连接的地方,去掉中文的名字即可:

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

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

相关文章

老板电器让AI融入烹饪?老板数字厨电实力展示AI做饭!

AI技术的迅猛发展已经深刻地改变了众多行业的面貌,其影响力远远超出了计算机科学本身的范畴。在追求生产效率与自动化的道路上,AI无疑成为最强大的驱动力之一,正是在这样的背景下,老板电器发布的「食神」AI大模型也为老板数字厨电…

国外创意二维码应用案例:韩国Cheil特别制作“希望胶带”,帮助寻找失踪儿童!

每年,在全世界都有大量的儿童失踪案件发生。对于父母来说,仅凭一张照片、一张海报要在茫茫人海里找到失踪的孩子,何其艰难? 2020年5月,韩国广告公司Cheil与韩国国家警察局宣布:为寻找长期失踪儿童&#xf…

VBA编写代码导出和导入类、模块、窗体

功能描述 为了方便备份代码,运行一个函数,导出类、模块、窗体。当在其他vba工程使用时,可以运行另外一个函数,快速导入代码。 1、开发人员宏设置:信任对VBA工程对象模型的访问 2、引用 Microsoft Visual Basic for A…

【非常实用—Navicat重置 MySQL 的密码】

Navicat重置 MySQL 的密码 连接本地数据库,忘记原始密码停止 MySQL 服务以安全模式启动 MySQL打开新的命令行窗口重置密码停止 MySQL 并重启 连接本地数据库,忘记原始密码 停止 MySQL 服务 在命令行中使用以下命令停止服务(Windows 下&#…

2024秋季学期期中考

密码 mmmd5 直接在网上找一个md5解密的网站现场来解就可以了。每一段都拼接起来就可以了。 但是的话,也可以直接用脚本,但是要用到MD5的字典。 它给了一个附件,可以借助此来解答。 那么我们主要来学习一下hash函数, 哈希函数&…

15.10 在k8s部署grafana-deployment并导入k8s大盘

本节重点介绍 : grafana deployment部署k8s大盘导入 准备yaml 部署工作 1. 修改yaml中的节点选择器标签 k8s-node01改为你自己的节点 2. 在节点上创建数据目录 mkdir -pv /data/grafana3. 部署grafana # 部署 kubectl apply -f deployment.yaml # 检查 [rootprome-mast…

CMU 10423 Generative AI:lec7、8、9(专题1:AE、VAE详解)

文章目录 1 AE(自编码器)1.1 自编码器干什么用的1.2 自编码器的架构图、输入输出、训练方法1.3 常见应用1.4 代码示例:图片的压缩存储和复原 2 VAE(变分自编码器)2.1 概述2.2 AE存在的问题:隐空间不平滑&am…

ad 明明已经给原理图库添加封装了,为什么还是看不到

不得不说,ad可能真的是比较庞大也不比较冗余,使用的过程中就会出现各种各样的问题,明明所有的操作都没问题,可是就是没能得到自己想要的,额 真的一言难尽 软件本身也很庞大了 各种东西可能一下子反应不过来&#xf…

谁的大一不迷茫?网络安全到底该怎么入门?

大一的新生,都在向我询问类似的问题: 网络安全要学的东西好杂,找不到方向了,迷茫了 同学们都在研究xxx,我要去学吗? 精力有限,我到底该学什么编程语言,好怕选错啊 最近下班比较早…

指针 (六)

OK,书接上回,咱们继续: 一 . 函数指针变量 (1)函数指针变量的创建 首先我们得明白,什么是函数指针变量呢?从我们之前学习过的整型指针,数组指针的相关知识当中,通过类…

【软件测试】什么叫测试?

生活中的测试 测试在生活中是处处可见的 例如:在商场购买衣服 外观测试:挑选符合个人审美的衣服试穿测试:选择尺码,试穿材质测试:考虑材质相关问题价格测试:价格是否符合预期 例如:在购物软件购…

【逐行注释】自适应观测协方差R的AUKF(自适应无迹卡尔曼滤波,MATLAB语言编写),附下载链接

文章目录 自适应R的UKF逐行注释的说明运行结果部分代码各模块解释 自适应R的UKF 自适应无迹卡尔曼滤波(Adaptive Unscented Kalman Filter,AUKF)是一种用于状态估计的滤波算法。它是基于无迹卡尔曼滤波(Unscented Kalman Filter&…

简单题58-最后一个单词的长度(Java and Python)20240918

问题的描述: python代码: class Solution(object):def lengthOfLastWord(self, s):""":type s: str:rtype: int"""# 去掉字符串前后的空格s s.strip()# 分割字符串,获取单词列表words s.split(" "…

9.1 溪降技术:游泳

目录 9.1 游泳概述观看视频课程电子书:游泳防御性游泳姿势**身体姿势** 积极游泳姿势**身体姿势** 总结 9.1 游泳 概述 深潭游泳 对于峡谷探险者来说,游泳是一项核心技能。我们的游泳水平和自信心将在很大程度上决定我们的路线选择。在这一阶段&#xff…

开放式耳机哪个好用?开放式耳机好还是入耳式耳机好?

开放式耳机这种新型的耳机类型最近几年,真的受到了越来越多人的欢迎了,所以很多人来问我如何才能选到一款合适自己的开放式耳机,毕竟一款合适自己的耳机才能够用的长久,作为一名合格的耳机测评师,在这里当然要为大家答…

Ollama:本地运行大模型【含UI界面】

文章目录 Ollama 简介安装 ollamaWindows 安装Docker 安装其它平台安装支持的模型模型清单模型参数与运行内存快速启动 llama 模型llama 模型介绍运行 llama3.1 模型通过 HTTP API 访问ollama 命令语法常用示例特别示例自定义模型创建 Modelfile创建模型并运行集成 Web 页面Ope…

Linux系统中的内建命令

当使用export命令设置环境变量时,既然export也是一个命令,那么一定也需要创建子进程,完成设置环境变量的任务。但是父子进程的数据是各自独立的(子进程会继承父进程的数据,但是),理论上来说父子…

客户说了算!精益产品开发,让中小企业精准触达用户需求!——张驰咨询

随着全球经济环境的波动,特别是疫情后经济复苏进程的反复,很多中小制造企业面临产品滞销、同质化严重和内卷竞争加剧的困境。市场饱和、利润微薄,还在新产品开发上遇到了研发人才不足、资金短缺等问题。许多企业在这场市场博弈中徘徊在生死边…

socket地址API(Linux网络编程基础API)

socket 目标进程的标识(套接字)由两部分组成: IP地址:标识出计算机所在的网络位置。端口号:标识出计算机上特定的进程。 字节序 字节序定义了多字节数据在内存中的存储顺序,是处理器架构的特性。字节序…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《基于模型-数据混合驱动的区域能源互联网韧性在线评估》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…