DataX教程(05)- DataX Web项目实践
文章目录
- 01 引言
- 02 DataX Web概述
- 03 DataX Web本地运行
- 04 DataX Web简单使用
- 4.1 step1: 新增数据源
- 4.2 step2: 新增任务模板
- 4.3 step3: 任务构建
- 4.4 step4: 查看任务
- 05 文末
01 引言
通过前面的博文,我们大概把DataX的用法、源码以及配置全部理清了:
- 《DataX教程(01)- 入门》
- 《DataX教程(02)- IDEA运行DataX完整流程(填完所有的坑)》
- 《DataX教程(03)- 源码解读(超详细版)
- 《DataX教程(04)- 配置完整解读》
那么,我们最终还是要把DataX
应用到我们的项目中的,那么该如何使用呢?
在这里,我要推荐下DataX-Web,主要它对于项目使用者来说,提供了一个很清晰的swagger
接口文档,以及可视化界面,方便理解流程,本文讲解下。
02 DataX Web概述
Github地址:https://github.com/WeiYe-Jing/datax-web
从下图,可以看到还是挺多星星的。
官方是这样描述的DataX Web
的:
DataX Web
是在DataX
之上开发的分布式数据同步工具,提供简单易用的 操作界面,降低用户使用DataX
的学习成本,缩短任务配置时间,避免配置过程中出错。用户可通过页面选择数据源即可创建数据同步任务,支持RDBMS
、Hive
、HBase
、ClickHouse
、MongoDB
等数据源,RDBMS
数据源可批量创建数据同步任务,支持实时查看数据同步进度及日志并提供终止同步功能,集成并二次开发xxl-job
可根据时间、自增主键增量同步数据。
顺便看看它的架构图:
总结:该项目主要的就是两个核心服务,通过调度中心服务(DataXAdminApplication
)来构建任务,然后rpc
远程调用调用执行器(DataXExcutor
)去执行。
03 DataX Web本地运行
具体的操作步骤本文不再描述,按照官方的文档来一步步操作即可,文档地址:
https://github.com/WeiYe-Jing/datax-web/blob/master/userGuid.md
其实主要分为几个步骤:
- 编译DataX源码,并导出编译后的文件夹,前面已经讲过了(可以参考:《DataX教程(02)- IDEA运行DataX完整流程(填完所有的坑)》)
- 执行
bin/db
下面的datax_web.sql
文件 - 修改项目配置,有两个,一是
datax_admin
下resources/application.yml
文件,另外一个是datax_executor
下resources/application.yml
文件。
然后需要运行两个服务,分别为:
DataXAdminApplication
(调度中心服务)
-DataXExecutorApplication
(执行器服务,可做集群)
04 DataX Web简单使用
启动成功后打开页面(默认管理员用户名:admin 密码:123456) http://localhost:8080/index.html#/dashboard
ok,现在我想把本地MySQL数据库(bm_wxcp
)里表(t_sync_log
)的所有内容同步到本地SQLServer数据库(datax_web
)里的表(t_sync_log_target
),该如何操作呢?下面来说说。
4.1 step1: 新增数据源
首先需要新增本地的MySQL和SQLServer数据源:
新增完成后:
4.2 step2: 新增任务模板
新增DataX任务模板,我这里新增了一个每30秒执行一次的任务:
新增完成:
4.3 step3: 任务构建
新增完任务了,那么现在就到了核心的事情了,就是任务的构建,即可以简单理解为配置DataX
能识别的json
配置。
从下图可以看到有4个步骤来构建任务,按照提示一步一步来:
①构建reader:
②构建writer:
③ 字段映射:
④ 构建任务(构建->选择模板->下一步)
⑤ 启动任务
4.4 step4: 查看任务
启动完成后,在日志管理模块,可以看到任务的执行结果:
在SQLServer目标源,可以看到同步成功结果:
05 文末
本文主要讲了DataX Web
的概念以及基本使用,具体的源码需要去Debug
并应用到实际的项目中去,本文完!
DataX教程(05)- DataX Web项目实践相关推荐
- 《Web项目实践》实验报告——Web项目实践基础
一.实验目的 掌握Web前端开发的基础知识: 掌握Web前端工程开发的基本流程: 二.实验内容 1.使用VSCode开发工具完成"青木商城"网站个人中心页面和订单支付确认页面的编写 ...
- web项目实践1-iwebshop项目-页面初始化数据与sql数据库中的数据对比
当拿到项目后首先应该根据页面初始化数据与SQL数据库中的查询数据进行比对,进行初始化界面测试 初始化页面数据加载分析 1.查询首页的顶级分类 select * from iwebshop_catego ...
- java商品管理系统_【Java Web】简易商品信息管理系统——首个Web项目
正文之前 在学习了一段时间的Java Web的内容之后,当然需要有个项目来练练手,我相信大多数人的首选项目都是信息管理系统吧,所以我选择了商品信息管理系统 目前项目源码已全部上传至GitHub,欢迎大 ...
- MyEclipse使用Maven创建web项目+搭建SSM框架教程
MyEclipse使用Maven创建web项目+搭建SSM框架教程 博文中的代码:链接:http://pan.baidu.com/s/1o8tqIMI 密码:m3si 安装maven和配置 1.下载m ...
- Node.js项目实践:构建可扩展的Web应用
2019独角兽企业重金招聘Python工程师标准>>> Node.js项目实践:构建可扩展的Web应用 <Node.js项目实践:构建可扩展的Web应用>用专业的讲解方式 ...
- web项目打包到上线教程_手把手教你在 IntelliJ IDEA 中部署 Web 项目
关注 逆锋起笔 学习 资源.工具不用愁 「逆锋起笔」公号读者福利 ☞ 程序员进阶必备资源免费送「21种技术方向!」 ☜本文地址:www.cnblogs.com/deng-cc/p/6416332.ht ...
- 转:在MyEclipse下创建Java Web项目 入门(图文并茂)经典教程
本文是一篇在Myeclipse下构建Java Web项目的初级教程.图文并茂,非常详细.所用的Myeclipse版本是7.5. 第一步:新建Web Project,如下图. 第二步,在弹出的窗口填写下 ...
- 在tomcat上部署项目需要打成jar_Spring Boot Web 项目教程,SpringBoot与传统Web 优缺对比...
1.引子 大家好,在接下里的一段时间里,我会给大家详细的介绍SpringBoot的基本使用,相信学完这门课程以后,你会对SpringBoot有一个清晰的认识,并且能够运用这门比较新颖的技术开发一些小程 ...
- Redis在Web项目中的应用与实践
Redis作为一个开源的(BSD)基于内存的高性能存储系统,已经被各大互联网公司广泛使用,并且有着诸多的应用场景.本篇文章将基于PHP来详细讲解Redis在Web项目中的主要应用与实践. 缓存 这里所 ...
最新文章
- Java渐变进度条_Android ProgressBar自定义图片进度,自定义渐变色进度条
- 加锁查询 FOR UPDATE 解决表格查询极慢的问题
- Arduino可穿戴开发入门教程Arduino开发环境介绍
- Feature Schema中Module和File节点属性含义的解释
- 推论统计学基础一:Estimation
- 浅谈事理图谱认知:系统体系+领域收敛+人机协同+辅助范式
- Log4j的应用实例
- ONVIF协议网络摄像机(IPC)客户端程序开发(2):第一次使用IPC摄像头
- Jquery学习总结(1)——Jquery常用代码片段汇总
- java -jar vm参数_java相关:运行jar程序时添加vm参数的方法
- php list() ecah(),PHP each()与list()函数
- L01-03:python学习之控制语句
- 非常经典的C语言知识点总结!
- 计算机管理用房设置要求,党政机关办公用房管理系统解决方案
- MT【91】空间余弦定理
- 【项目】关于杉德支付接口对接
- SpringBoot 接口数据加解密
- 瑞工 无线打印服务器 评测,7800P 5G无线鼠标赏析
- MATLAB面向对象_及_AppDesigner使用
- Centos配置NFS
热门文章
- 乔布斯遗孀裸捐 250 亿美元财产:没兴趣累积财富
- 读源码(七)—— ejs
- 大数据传输-文件分段传输
- 计算机等级考试电子邮件的保存,计算机基础知识电子邮件使用技巧集锦(二)
- 升级为私有全栈云的腾讯云TStack究竟强在了哪儿?
- php 微信消息,php实现微信公众号回复消息
- easypoi导出excel不设置样式_解决EasyPoi导出excel文件后打开提示格式错误的问题
- 在 Ubuntu20.04 上安装 python2 并设置为默认方式
- “21 天好习惯”第一期-10
- js数据类型-2-从零开始的js