摘要: 启动步骤解析 1、解析配置,包括job.json、core.json、plugin.json三个配置 2、设置jobId到configuration当中 3、启动Engine,通过Engine.start()进入启动程序 4、设置RUNTIME_MODE奥configuration当中 5、通过Jo 阅读全文
posted @ 2020-06-18 18:18 mzjnumber1 阅读(1460) 评论(0) 推荐(0) 编辑
摘要: 真正的执行都是在这里完成,start代码如下: View Code 主要执行流程为: 1、preHandle():job前置操作 2、init():初始化reader和writer 3、prepare():执行插件的prepare操作 4、split():切分任务 5、schedule():执行任务 阅读全文
posted @ 2020-06-18 18:06 mzjnumber1 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 编写读的插件时,需要将数据的每个列都转成Datax内部的Column对象 可以通过idea的全局搜索🔍 record.addColumn方法,看看各个读插件是怎么转成Datax内部Column的 每条正常数据都是DefaultRecord对象,实现了Record接口 通过Datax读取的每条数据r 阅读全文
posted @ 2020-06-18 16:38 mzjnumber1 阅读(1936) 评论(0) 推荐(0) 编辑
摘要: 启动命令模板 可以参考datax.py文件: ENGINE_COMMAND = "java -server ${jvm} %s -classpath %s ${params} com.alibaba.datax.core.Engine -mode ${mode} -jobid ${jobid} -j 阅读全文
posted @ 2020-06-18 16:34 mzjnumber1 阅读(2014) 评论(0) 推荐(0) 编辑
摘要: 接着上一节…… 做好了切分工作,下一步当然就是对对应的各个任务进行任务托管和监控:schedule,post,postHandle,invokeHooks。 schedule首先完成的工作是把上一步reader和writer split的结果整合到具体的taskGroupContainer中。 in 阅读全文
posted @ 2020-06-18 12:46 mzjnumber1 阅读(410) 评论(0) 推荐(0) 编辑
摘要: 开始(以mysql为例) 从 https://github.com/alibaba/DataX 下载源码,通过idea阅读。 Datx根目录下core包包含了整个执行框架, 其中com.alibaba.datax.core.Engine是整个Java任务的入口, core/src/main/bin/ 阅读全文
posted @ 2020-06-18 12:39 mzjnumber1 阅读(1341) 评论(0) 推荐(0) 编辑