前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kettle工具使用及总结

Kettle工具使用及总结

作者头像
全栈程序员站长
发布2022-11-03 16:10:36
2.6K0
发布2022-11-03 16:10:36
举报
文章被收录于专栏:全栈程序员必看

Kettle工具使用及总结

一、kettle安装及报错:

kettle主要用于数据清洗,即常见ETL工具,拥有图形化界面且免费的优点。其下载包直接解压打开就能用,遇到的问题:

1.连接MySQL报错:

①报错:

Driver class ‘org.gjt.mm.mysql.Driver’ could not be found, make sure the ‘MySQL’ driver (jar file) is installed.

org.gjt.mm.mysql.Driver

原因:没有识别到连接数据库的驱动jar包

解决方法:

将驱动jar包复制粘贴到data-integration\lib文件下(data-integration为kettle安装目录);重启spoon。

操作完成之后反复尝试还是报相同的错,识别不到,则说明你的kettle版本与你的驱动版本不容,无法识别。(例如我的kettle7.0无法识别mysql-connector-java-8.0.19.jar)。那么只有换版本或者换连接的数据库(这里我放弃连接MySQL,转为连接sqlserver)

②报错:

Error connecting to database: (using class org.gjt.mm.mysql.Driver)

Unknown initial character set index ‘255’ received from server. Initial client character set can be forced via the ‘characterEncoding’ property.

原因:你导入的jar包被kettle识别,但是它与你本地MySQL版本不容

解决方法:换连接驱动的jar包(因为驱动版本是跟数据库版本一致的,间接说明你的kettle与MySQL版本不容)

连接SQL server:

连接成功:

操作:(本案例演示csv文件拆分字段转存sqlserver数据库)

二、kettle实例

(1)建立作业,连接数据库

(2)执行sql脚本(对数据库表初始化操作)

下面的sql脚本在sqlserver运行不出错,但在kettle就会报错(不知道为什么,所以现在我sql脚本没有写,不过想想确实还不如直接去数据库客户端里建表方便)

IF NOT EXISTS (select * from dbo.sysobjects where xtype=’U’ and Name = ‘kettle_test’)

BEGIN

CREATE TABLE kettle_test

(

kind varchar(255),

time varchar(255),

processingDepartment varchar(255),

content varchar(255)

);

END

执行结果出错(如下图),后来我把sql语句删了,动手在数据库里建的表。

(3)在转换1中新建一个转换;完成输入csv文件,字段切分,输出到表的操作

(这里,观察左菜单栏就会发现它的数据清洗功能)

①给转换建立数据库连接;

②进行csv文件输入:

CSV输入设置

拆分字段:

Excel输入设置

从输入组件中拖入EXCEL输入,点击设置:

(1)在弹出框中选择“表格类型”为“Excel 2007 XLSX (Apache POI)”;

(2)点击“文件或目录“后的“浏览”选择需要导入的Excel表格,点击“增加”添加至选中文件列表中;

(3)单击“工作表”,在工作表页面选择“获取工作表名称”,选择相应的“可用项目”添加至“你的选择”中;

(4)单击“字段”,在字段页面点击“获取来自头部数据的字段”,(所以Excel表格最好带有列字段列名),并可以对获取的数据字段类型进行调整,可以点击“预览记录”查看数据;

表输出设置

展开”输入”列表将”表输出”模块拖入右侧空白区域;

⑤点击文件,保存

⑥返回作业,为转换1设置:

(4)保存,执行

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月17日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Kettle工具使用及总结
    • 一、kettle安装及报错:
      • 二、kettle实例
        • CSV输入设置
        • Excel输入设置
        • 表输出设置
    相关产品与服务
    云数据库 SQL Server
    腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档