datax-web在windows上环境搭建及同步数据测试datax-web部署说明:
1. DataX 是阿⾥巴巴集团内被⼴泛使⽤的离线数据同步⼯具/平台,实现包括 MySQL、Oracle、SqlServer、Postgre、HDFS、
Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS 等各种异构数据源之间⾼效的数据同步功能。
2. 环境准备:
JDK(1.8以上,推荐1.8)
Python(推荐Python2.7.X)
datax
3.
4. 快速搭建datax,下载时使⽤
5. 使⽤datax-web,做全量同步数据,增量同步数据。
环境搭建
⼀、安装jdk
不做介绍,不会⾃⾏百度。
⼆、安装Python
下载2.7.x版本安装。默认下⼀步安装,不做介绍,本⽂默认安装在:C:\Python27
三、下载datax
测试是否安装成功:进⼊datax的bin⽬录:
1、新建⼀个⽂件为:stream2stream.json,把下⾯的内容复制到,stream2stream.json⽂件内。
{
"job": {
"content": [
{
"reader": {
"name": "streamreader",
"parameter": {
"sliceRecordCount": 10,
"column": [
{
"type": "long",
"value": "10"
},
{
"type": "string",
"value": "hello,你好,世界-DataX"
}
]
}
},
"writer": {
"name": "streamwriter",
"parameter": {
"encoding": "UTF-8",
"print": true
}
}
}
],
"setting": {
"speed": {
"channel": 5
}
}
}
}
2、在bin⽬录输⼊cmd,如下图,进⼊doc命令窗⼝
3、防⽌乱码先输⼊:CHCP 65001, 再输⼊:python datax.py ./stream2stream.json  按回车,出现如下结果,说明按照成功了。
四,data-web部署
如图,该项⽬主要分为5个部分,主要的是要启动datax-admin和datax-executor
导⼊的时候可能有报错,⼤部分问题都是maven包没有下载全
(建议导⼊之后先在项⽬的主⽬录下使⽤ mvn install,这样基本上所有的依赖包都会install好)
注: 项⽬中存在lombok包,如果没有下载该插件,需要补全log和类中缺少的set/get⽅法。
2、执⾏sql语句,语句在bin/db的⽬录下,执⾏datax_web.sql
3、修改配置⽂件
(1)修改datax-admin中的数据源配置
(2)修改datax-executor中的datax.py的地址和存放临时json⽂件地址,datax.py就是上⾯解压的地址:
五,通过datax-web实现数据同步
1、在数据源管理,创建需要同步的数据源。
2、在datax任务模板创建数据。
3、任务构建,创建任务。
4、上⾯⼏步弄好后,就会在任务管理⽣成⼀条记录。其他两条是我新建的。
5、在操作,点击执⾏⼀次。
6、在查询同步⽇志提⽰
2020-08-14 14:30:39 [JobThread.run-130] <br>----------- datax-web job execute start -----------<br>----------- Param:
2020-08-14 14:30:39 [BuildCommand.buildDataXParam-101] ------------------Command parameters:
2020-08-14 14:30:39 [ute-83] java.io.IOException: Cannot run program "python": CreateProcess error=2, 系统不到指定的⽂件。
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at java.(Runtime.java:620)
at java.(Runtime.java:485)mysql下载后安装中出现提示不到安装包
at com.utor.service.ute(ExecutorJobHandler.java:55)
at com.hread.JobThread.run(JobThread.java:153)
Caused by: java.io.IOException: CreateProcess error=2, 系统不到指定的⽂件。
at java.ate(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 4 more
2020-08-14 14:30:39 [JobThread.run-165] <br>----------- datax-web job execute end(finish) -----------<br>----------- ReturnT:ReturnT [code=500, msg=command e 2020-08-14 14:30:39 [TriggerCallbackThread.callbackLog-186] <br>----------- datax-web job callback finish.
经过调试,在datax-executor项⽬中  ExecutorJobHandler类的 buildDataXExecutorCmd⽅法

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。