Kettle的安装与基本使用

什么是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.xdnf.cn/news/143596.html

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

相关文章

Flutter 项目结构的区别

如果需要调用原生代码,请创建一个plugin类型的项目开发。如果需要调用C语言,请参考文档:Flutter项目中调用C语言plugin 其实是 package 的一种,全称是 plugin package,我们简称为 plugin,中文叫插件。 1. A…

动态分析基础

实验一 Lab03-01.exe文件中发现的恶意代码 问题: 1.找出这个恶意代码的导入函数与字符串列表? 2.这个恶意代码在主机上的感染迹象特征是什么? 3.这个恶意代码是否存在一些有用的网络特征码?如果存在,它们是什么? 解答: 1.找出这个恶意代…

idea使用阿里云服务器运行jar包

说明&#xff1a;因为我用的阿里云服务器不是自己的&#xff0c;所以一些具体的操作可能不太全面。看到一个很完整的教程&#xff0c;供参考。 0. 打包项目 这里使用的是maven打包。 在pom.xml中添加以下模块。 <build><plugins><plugin><groupId>org…

保护您的隐私:隐藏 IP 地址的重要性

在当今的数字时代&#xff0c;我们的在线隐私和安全变得比以往任何时候都更加重要。浏览互联网时保护自己的一种方法是隐藏您的 IP 地址。 但是为什么要隐藏您的 IP 地址以及如何有效地做到这一点&#xff1f; 隐藏您的 IP 地址有助于保护您的在线匿名性。您的 IP 地址就像您的…

鹰眼降尘模型

鹰眼降尘模型是一种集成了先进图像识别技术、机器学习算法和精准控制技术的环保解决方案&#xff0c;旨在解决无组织排放粉尘污染问题。以下是朗观视觉小编对鹰眼降尘模型的详细解析&#xff1a; 一、技术原理 鹰眼降尘模型主要基于以下关键技术原理实现其功能&#xff1a; 图…

网络安全。

文章目录 目录 文章目录 一. 网络安全概述 二. 密码学原理 三. 报文完整性和数字签名 密码散列函数 报文鉴别码 数字签名 公钥认证 四. HTTPS通信 总结 一. 网络安全概述 网络安全是保护计算机网络及其数据免受各种威胁和攻击的实践和技术。随着互联网的普及和数字化…

「数据科学」清洗数据,真实数据集中缺失值的查看与处理

在数据科学的工作过程中&#xff0c;我们通过查看数据的基本要素和元数据之后&#xff0c;需要根据查看的结果&#xff0c;考虑是否需要清洗数据。缺失值的查看与处理&#xff0c;就是清洗数据的一部分。如果我们的数据集中&#xff0c;存在缺失值的话&#xff0c;就需要考虑如…

利用WPF绘制轮廓并保存为图片

1.前言 WPF作为显示工具也挺好用&#xff0c;用C#开发应用软件会比较省力&#xff0c;当然也有其缺点&#xff0c;如在对效率要求较高的情况下有性能问题&#xff0c;本文记录用WPF绘制轮廓并保存为图片相关内容。 显示效果也还不错&#xff0c;满足调试使用了&#xf…

使用JS实现tab栏切换

重要知识点了解 环境对象&#xff08;this&#xff09; 1.环境对象&#xff1a;指的是函数内部特殊的变量 this 2.this的使用&#xff1a;当我们在一个函数里面需要去调用一个变量是。需要去引用如 函数的调用方式不同&#xff0c;this 指代的对象也不同 【谁调用&…

应用AI技术的销售进化论

该文章聚焦AI技术在销售行业中的实际应用&#xff0c;解读销售人员如何利用先进技术及工具突破传统限制&#xff0c;增强业务能力帮助销售人员保持竞争优势&#xff0c;提升工作效率与业绩。 1、AI如何重塑销售规则 1.1 AI在销售领域的应用&#xff1a;不只是数字游戏 在销售…

python调用c++动态链接库,环境是VS2022和vscode2023

目录 前言&#xff1a;配置环境&#xff1a;基础夯实&#xff08;对于ctypes的介绍&#xff09;&#xff1a;1. 加载共享库2. 定义函数原型3. 调用函数4. 处理数据结构5. 处理指针6. 错误处理7. 使用 ctypes.util总结 效果展示&#xff1a;操作步骤(保姆级教学)一在VS中创建dll…

train_llava记录

首先时build_model 【自定义多模态大模型LLaVA——LLaVA系列】 https://www.bilibili.com/video/BV1GS411P74b/?share_sourcecopy_web&vd_source820e17ab3d5412c1c94e68f2e5f07ae7 作者用的4B的qwen1.5 但是这里发现3090是只能部署但是推理爆显存所以只能换成0.5B的 问…

计算机毕业设计汽车选购销售平台管理系统车辆用户分类订单评价购买/springboot/javaWEB/J2EE/MYSQL数据库/vue前后分离小程序

‌计算机毕业设计&#xff1a;汽车选购销售平台管理系统‌ ‌一、项目概述‌ 本毕业设计项目旨在构建一个全面的汽车选购销售平台管理系统&#xff0c;该系统将涵盖车辆管理、用户分类、订单处理、评价系统以及购买功能。通过采用Spring Boot、JavaWEB、J2EE等后端技术&#…

【java系】记录一次ClassLoader.getResourceAsStream获取不到文件流

问题描述反馈&#xff0c;开发同事在本地获取对应文件流是可以正常业务操作&#xff0c;发布到linux服务器对应环境就会出现异常。 源码部分截图 看到这里&#xff0c;我猜想是否和window底层文件操作系统不区分大小写有关呢&#xff1f;而服务器linux是严格区分大小写这个应该…

黑神话悟空mac可以玩吗

黑神话悟空mac上能不能玩对于苹果玩家来说很重要&#xff0c;那么黑神话悟空mac可以玩吗&#xff1f;目前是玩不了了&#xff0c;没有针对ios系统的版本&#xff0c;只能之后在云平台上找找了&#xff0c;大家可以再观望下看看。 黑神话悟空mac可以玩吗 ‌使用CrossOver‌&…

场外期权或成暴利工具?!应该怎么做场外期权?

今天带你了解场外期权或成暴利工具&#xff1f;&#xff01;应该怎么做场外期权&#xff1f;通过深入了解市场、选择合适的通道商、制定清晰的策略和有效的风险管理&#xff0c;可以在场外期权交易中取得更好的结果。 什么是场外期权&#xff1f; 场外期权是交易所以外的市场…

【店雷达全网图搜比价盘点】1688、淘宝、阿里国际、亚马逊、速卖通5大平台

全网图搜比价的意义&#xff0c;对于商家来说的意义在于可以对比不同供应商提供的同款或类似产品的价格&#xff0c;找出性价比高且质量可靠的商品&#xff0c;确保在运费和其他成本考虑下仍能保持合理利润空间&#xff0c;挑选出更具性价比且可靠的商品有效降低选品风险。 店…

ubuntu安装wordpress(基于LNMP环境)

参考链接 Ubuntu安装LNMP 安装步骤 环境需要LNMP环境&#xff0c;如果没有安装可以参考ZATA—LNMP简单安装 在mysql中设置wordpress所用的用户名和密码 #1. 登录mysql mysql -uroot -p #2. 创建wordpress数据库 create database wordpress; #3. 创建新用户user&#xff0c;…

ES分词导致查询结果不准确

问题现象 索引里面有数据&#xff0c;而没有查询出来。 如下图所示&#xff0c;术语库&#xff08;索引&#xff09;中里面有一条数据的原文是“层”&#xff0c;而根据完整的原文来查询该原文中的术语&#xff0c;并未将该术语查询出来。 根据原文查询该原文中的术语&#x…

飞睿智能UWB BLE Tag蓝牙防丢器模块,APP测距定位一键绑定,安全守护每一刻

我们总在不经意间与生活中的小物件擦肩而过——钥匙遗忘在咖啡厅的角落&#xff0c;钱包遗失在拥挤的地铁&#xff0c;甚至孩子的书包在人群中悄然消失……每一次的失而复得都是幸运的眷顾&#xff0c;但更多的是遗憾与不便。今天&#xff0c;就让我带你走进一个智能守护的新世…