微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Web可视化的数据同步ETL工具

因项目需要,结合目前参与的项目,以及个人技术能力范围,组合研发一套web可视化数据同步系统,正式名称:DataHamal(数据搬运工)。

项目背景:接触过阿里云这类大数据平台,对于中大型项目以及需要与外部系统对接数据的情况下,几乎都需要数据共享/分析处理/ETL同步等功能

避免重复造轮子,首页了解了一番目前成熟的kettle这类,存在一些问题,要不是商业,要不就是主流容器化支持不太好,没有Web管理控制台等等,总之开源上想使用一款体验好,技术主流,部署简单,功能稳定比较困难,通常都无法直接拿过来用,多多少少有很多不足之处需要二次开发,而且设计成型跨开发语言难以二开,因此决定组合一套成熟技术,开发一个通用性的数据同步系统,引入了一些开源优秀框架,其中核心组件1.XXLJob分布式调度,用于分布式调度执行节点;2.datax阿里云DataWorks商业版本的开源版本,因为使用过DataWorks对datax插件设计思路很感兴趣,支持各种异构数据源同步,专业的,详情百度了解。

整体架构设计思路:

1.支持容器化Docker一键部署,快速交付;

2.嘿嘿,必须是java开发语言,熟悉的SpringBoot搭建的管理后台

3.开发两个服务1个是admin,一个是node执行器,admin负责调度,node负责执行任务;

4.admin和node分别通过源码的方式集成XxlJob的admin和client,有少许的源码改造工作,尽量保留xxljob的原汁原味,方便后期升级;node单独集成datax3.0一起打包,admin和node会独立打包的docker镜像。

5.非必要技术一概不要,目前快速交付需要的环境:1.docker环境;2.admin镜像;3.node镜像;4.MysqL数据库,是不是很简单,心动的感觉。

先上图:

1.登录

 

2.任务调度

 

 3.数据集成

 

 

 

 

4.配置调度

 

 5.数据开发

 6.Docker容器化部署,rancher平台托管

 

 

 

 图太多,先贴这么多,以下对菜单各个功能介绍以下:

1.执行调度(这个不多介绍了,熟悉XXLJob的同学一看就知道,还是熟悉的味道,熟悉的配方)

2.数据集成(重点,用过阿里云DataWorks的同学能够感受到熟悉的感觉,没错还原大部分DataWorks主要操作)

2.1 离线同步

2.2 数据开发

2.3 作业

3.数据源()

4.资源分组()

5.系统管理()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐