Kettle---初识

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:         最近因公司项目的原因,小编接触到了Kettle这样一款工具,感觉挺好玩儿的,通过几天的探索和学习,对Kettlde的使用有了一点点小心得,小编打算把这段期间学习和探索到的关于Kettle的东东写几篇博客记录一下,一来是可以总结一下这几天的研究成果,二来可以帮助到有需要的小伙伴们,不足之处,还请小伙伴们多多指教。

        最近因公司项目的原因,小编接触到了Kettle这样一款工具,感觉挺好玩儿的,通过几天的探索和学习,对Kettlde的使用有了一点点小心得,小编打算把这段期间学习和探索到的关于Kettle的东东写几篇博客记录一下,一来是可以总结一下这几天的研究成果,二来可以帮助到有需要的小伙伴们,不足之处,还请小伙伴们多多指教。

     自我介绍

        Hello大家好,我是Kettle,我是一款国外开源的ETL工具,我是纯java编写的,可以在Windows、Linux、Unix上运行,数据抽取高效稳定。我的中文名称叫水壶,该项目的主程序员MATT希望把各种数据放到一个壶里,然后以一种指定的格式流出。ETL是Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程,对于IT行业(也有其他行业)来说,经常会遇到大数据量的处理,转换,迁移,所以了解并掌握一种ETL工具的使用,必不可少。我绿色无需安装,Kettle中有两种脚本文件,transformation和job;transformation完成针对数据的基础转换,job则完成整个工作流的控制。

 e    部署运行以及可能遇见的坑

         小编用的版本是6.1,小伙伴们可以直接去官网上进行下载,解压到任意盘即可,Windows平台下,双击运行Kettle文件夹下的spoon.bat 文件,如果是Linux、AppleOSX运行的是Spoon.sh。当然安装的前提是,小伙伴们的电脑已经配置好java的环境变量了,如果java_home设置,仍然提示
  could not find the main class. Program willexit!
可以设置环境变量:PENTAHO_JAVA_HOME,变量值为:jdk的安装目录,1.6以上即可。小编的为:C:\ProgramFiles\Java\jre1.8.0_77,如果启动还是报错 ERROR:could not create the java virtualmachine! 不是Java虚拟出了问题,修改一下spoon.bat里内存配置:
  if"%PENTAHO_DI_JAVA_OPTIONS%"=="" setPENTAHO_DI_JAVA_OPTIONS="-Xms1024m" "-Xmx2048m""-XX:MaxPermSize=256m"
 改为:
  if"%PENTAHO_DI_JAVA_OPTIONS%"=="" setPENTAHO_DI_JAVA_OPTIONS="-Xms512m" "-Xmx1024m""-XX:MaxPermSize=256m",其中还有可能遇到的一个坑就是连接数据库找不到驱动的问题,小编的数据库是MySql,提示错误为[mysql] :org.pentaho.di.core.exception.KettleDatabaseException:
      Error occured while trying to connect tothe database
      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

        解决办法:把mysql-connector-java-5.1.37-bin.jar拷贝到安装包lib的文件夹下面,然后重新启动spoon.bat即可。以上是小编在安装Kettle过程中遇到的一些问题,写下来,希望小伙伴们看到可以避免相同的坑。

     产品家族
         Kettle家族目前包括4个产品:Spoon、Pan、CHEF、Kitchen。是不是感觉来到了厨房世家!
SPOON:通过图形界面来设计ETL转换过程(Transformation)。
PAN :批量运行由Spoon设计的ETL转换(例如使用一个时间调度器)。Pan是一个后台执行的程序,没有图形界面。
CHEF :创建任务(Job)。任务通过允许每个转换,任务,脚本等等,更有利于自动化更新数据仓库的复杂工作。任务通过允许每个转换,任务,脚本等等。任务将会被检查,看看是否正确地运行了。
KITCHEN :批量使用由Chef设计的任务(例如使用一个时间调度器)。KITCHEN也是一个后台运行的程序。
  配置数据库

        配置数据库有两种方式,第一种是直接配置,另一种是在JNDI配置文件里,首先我们来看第一种配置数据库的方式,点击菜单栏文件里面有一个数据库连接,打开如下所示:


例如,小编的一些设置如下所示:


这个就是常见的工具连接数据库,填写好上述内容之后,点击测试,出现如下界面,表示数据库连接成功!

        

        ok,出现上述这个界面,说明我们的数据库已经连接成功了,这样配置数据库的优点是随时需要随时进行配置,如果需要改变连接,修改此处配置可以立即生效,缺点是如果转换的比较多,一旦需要修改数据源每个转换都要进行改动,就比较麻烦了,所以介绍第一种配置连接数据库的方式,通过配置文件,如下图所示:


所连接名称是为了在转换中好选择进行填写的,填什么都OK!

小编寄语:该博文小编主要介绍了Kettle的基础知识,包括kettle的简介,部署Kettle时可能遇见的坑,Kettle

的产品家族以及如何配置数据库的两种方式,Kettle这个ETL工具集她允许我们管理来自不同数据库的数据,好啦,

关于Kettle的一些基本知识,小编就先介绍到这里,接下来的博文中,小编将结合具体的Demo来讲解如何在实际操作

中运用Kettle,敬请期待!


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
存储 缓存 NoSQL
Redis的5.0/6.0/7.0版本重点介绍以及使用!
1. Stream数据类型:Redis 5.0引入了Stream数据类型,它是一种日志结构,用于高性能、持久化和实时处理的数据流。Stream可以按照时间顺序存储和检索消息,并支持消费者组和消费者偏移量管理等功能。 2. 基于模块的全文搜索:Redis 5.0通过引入Redis Search模块,提供了全文搜索的功能。它支持对文本字段进行索引和搜索,包括分词、词项权重、布尔查询等功能。 3. 客户端缓存:Redis 5.0引入了客户端缓存(Client-side caching)功能。客户端可以缓存服务器返回的数据,减少对服务器的请求,提高性能和响应速度。
3811 1
|
Windows
Windows查看端口占用以及关闭相应的进程
Windows查看端口占用以及关闭相应的进程
589 0
|
SQL
若依框架---角色与权限
若依框架---角色与权限
758 0
解决传入的请求具有过多的参数,该服务器支持最多 2100 个参数
解决传入的请求具有过多的参数,该服务器支持最多 2100 个参数
|
数据安全/隐私保护 Windows
Windows 技术篇 - 远程桌面连接不保存密码、每次都要输入密码问题解决
Windows 技术篇 - 远程桌面连接不保存密码、每次都要输入密码问题解决
2635 0
Windows 技术篇 - 远程桌面连接不保存密码、每次都要输入密码问题解决
|
7月前
|
人工智能 运维 监控
从大规模恶意攻击 DeepSeek 事件看 AI 创新隐忧:安全可观测体系建设刻不容缓
从大规模恶意攻击 DeepSeek 事件看 AI 创新隐忧:安全可观测体系建设刻不容缓
110 1
从大规模恶意攻击 DeepSeek 事件看 AI 创新隐忧:安全可观测体系建设刻不容缓
|
12月前
|
存储 IDE Java
Java“NoClassDefFoundError”解决
Java中的“NoClassDefFoundError”错误通常发生在尝试访问某个类时,该类在编译时可用但在运行时找不到。解决方法包括:确保所有依赖库已正确添加到类路径中,检查类名和包名是否正确,以及清理并重新构建项目。
2336 3
|
Kubernetes 数据库 容器
k8s快速部署xxl-job
k8s快速部署xxl-job
1253 3
|
12月前
|
SQL 数据库
为什么SQL日志文件很大,该如何处理?
为什么SQL日志文件很大,该如何处理?