datavane / tis

Support agile DataOps Based on Flink, DataX and Flink-CDC, Chunjun with Web-UI
https://tis.pub
Apache License 2.0
1.04k stars 221 forks source link

TIS 与 dolphinscheduler 整合方案实现 #345

Closed baisui1981 closed 2 months ago

baisui1981 commented 3 months ago

目标

实现TIS 与 dolphinscheduler 整合,可以实现在TIS中定义批量数据同步通道任务,将该批量同步通道的任务名称配置到dolphinscheduler平台中,后续任务的手动及自动定时触发全部由dolphinscheduler端执行。

流程&效果

https://www.processon.com/view/link/66bd6e1cfb35b76d02da45dc?cid=66bd59dffb35b76d02da1666

相关材料

之前在DS中实现的与TIS整合的方案

之前已经在DS平台中https://github.com/apache/dolphinscheduler/issues/5992 ,已经实现了一个与TIS整合的实现的方案,不过该方案存在问题,TIS不仅负责任务配置,还承担了同步任务执行,由于数据同步任务是计算密集型任务,执行过程中无法充分利用DS平台中的计算资源,这样对用户来说是不经济的。需要改造成同步执行完全使用DS平台的计算资源,TIS只是起到同步任务配置的作用。

5992 实现的方案已经被下架了

https://github.com/apache/dolphinscheduler/issues/16218 通过issue了解到之前pigeon插件已经在3.3.0 版本中要被下架了,所以需要找到一个合适的DS中的task-plugin进行改造

被下架的pigeon实现:https://github.com/apache/dolphinscheduler/tree/3.2.2/dolphinscheduler-task-plugin/dolphinscheduler-task-pigeon

通过改造datasync 插件来实现

https://github.com/apache/dolphinscheduler/blob/dev/dolphinscheduler-task-plugin/dolphinscheduler-task-datasync/pom.xml

TIS现有与powerjob整合实现分布式批量数据同步任务

https://www.processon.com/view/link/623429841efad407524d0fbe?cid=6091089fe0b34d0ec9c9fb6f

通过DS REST 创建流程

http://192.168.28.201:12345/dolphinscheduler/swagger-ui/index.html?language=zh_CN&lang=cn#/%E6%B5%81%E7%A8%8B%E5%AE%9A%E4%B9%89%E7%9B%B8%E5%85%B3%E6%93%8D%E4%BD%9C/createProcessDefinition

baisui1981 commented 2 months ago

已经完成