Java技术栈 —— 如何实现一个自己的DataX插件?

一、概要

DataX 是阿里云 DataWorks数据集成 的开源版本(可以理解为DataWorks的阉割版),实现一个自己的DataX插件可以有助于各种异构数据源的导入导出,从业务角度与提升自己的技术视野两个方面来说,实现一款自己的DataX插件是很有必要的一件事。

二、实现流程与技术细节

2.1 认识DataX

DataX采用FrameWork+plugin的方式,插件只需关心数据的读取或者写入本身,而同步的共性问题,比如:类型转换、性能、统计,则交由框架来处理。[3]

Job是DataX数据同步的最小业务单元
Task是DataX数据同步的最小执行单元,相当于对Job的拆分

参考文章或视频链接
[1] 《如何开发一个自己的datax插件》
[2] DataX - Github
[3] 官方文档重点参考 DataX插件开发宝典 - Github
[4] 系列文章值得一看 DataX学习指南(一)–基础介绍
[5] 打包报错,Maven版本不可过高,我使用的是3.6.3 Could not find goal ‘assembly‘ in plugin org.apache.maven.plugins:maven-assembly-plugin: among avai
[6] 《DataX与Kettle,深度对比分析》 - 51CTO

2.2 运行DataX

对参考文章3的纠正,的确可以用IDEA把DataX运行起来,但datax.home有讲究,运行Engine.java传入的参数方式也有说法,你配置的datax.home,一定要有conf目录及其下的core.json文件

# -jobid你自己填,总之不要是-1
-job E:\IdeaProjects\DataX\target\datax\datax\job\job.json -jobid 1

在这里插入图片描述
其实关于DataX在IDEA中的调用,datax-example项目里有写,所以并不像参考文章三说的那样,官方没有IDEA运行的示例文档,只是写在了代码中,不过这一点确实容易误导开发者,可说到底,python datax.py也只是一种用python调度java程序运行的方式,一个java项目,不可能存在IDEA运行不起来的情况。
在这里插入图片描述

参考文章或视频链接
[1] 《DataX学习指南(四)-- 项目运行》
[2]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值