一、研究了kettle
Kettle最早是一个开源的ETL工具
前置条件,kettle是一个jar包项目,依赖jdk。安装kettle需要安装好jdk环境
二、下载安装
1、源代码下载:
GitHub - pentaho/pentaho-kettle: Pentaho Data Integration ( ETL ) a.k.a KettlePentaho Data Integration ( ETL ) a.k.a Kettle. Contribute to pentaho/pentaho-kettle development by creating an account on GitHub.https://github.com/pentaho/pentaho-kettle/
kettle工具下载:
Pentaho from Hitachi Vantara - Browse Files at SourceForge.netEnd to end data integration and analytics platformhttps://sourceforge.net/projects/pentaho/files/2、目录说明
Spoon.bat: 图形界面方式启动作业和转换设计器。
Pan.bat: 命令行方式执行转换。
Kitchen.bat: 命令行方式执行作业。
Carte.bat: 启动web服务,用于 Kettle 的远程运行或集群运行。
Encr.bat: 密码加密
三、数据复制使用步骤
1、打开Spoon.bat文件
2、资源库
①选择开发方案,选择资源库方式
文件->新建->转换 打开转换操作界面
② 工具 -> 向导 -> 创建数据库向导
输入数据库连接1
然后设置JDBC地址
第一次连接mysql需要下载mysql驱动,下载好驱动,放到你的spoon解压目录中的:data-integration/lib/里面,重启spoon
相关驱动jar:
mysql驱动下载地址:
https://mvnrepository.com/artifact/mysql/mysql-connector-java
oracle驱动下载地址
https://mvnrepository.com/artifact/ojdbc/ojdbc
数据库连接一,连接成功
同理:创建另一个数据库连接,可以是mysql连接2,也可以是oracle连接,SqlServer连接等等
③、通过工具->数据库->浏览分别可以i看到多个数据库连接的,状况,表和视图等等均可以看到
④建立表输入
1、打开核心对象
2、建立表输入-源表连接
选择输入->表输入
修改步骤名称、数据库连接,和对应sql。可以预览数据
⑤建立表输出-目标表连接
选择输出->表输出,同时建立好输入与输出的关联关系
修改步骤名称、数据库连接,和对应sql。可以预览数据
⑥在输入、输出之前还需要加一个步骤清理SQL
组件库->选择脚本->选择执行SQL脚本
选择数据库连接,一定要确认好,是清理目标地址。不要选成清理源表数据!!!切记
四、 测试转换是否正常工作
查看日志转换正常
目标表也同步完成数据
五、新建作业,更改作业名称与配置
其中transformation所选择文件,是上一步转换保存的脚本路径
选择 Start 、成功、转换任务 可以选择多个转换任务
其中Start组件可以设置任务定时启动的时间配置
将转换脚本保存到 文件夹/脚本保存/中
将定时作业保存到 文件夹/job/中
方便下次重新启动
附录:kettle学习路径
1、基础学习-使用方法
ETL工具(数据同步)_无敌小田田的博客-CSDN博客Kettle做跨库数据迁移工作https://blog.csdn.net/qq_36602951/article/details/125898662
2、linux运维部署ETL工具(数据同步) 二_无敌小田田的博客-CSDN博客kettle使用掌握之后,还需要掌握在linux下的定时执行的策略https://blog.csdn.net/qq_36602951/article/details/125959374