“Welcome to Apache incubator,DolphinScheduler!”
美国时间2019年8月29日,易观开源的分布式任务调度引擎DolphinScheduler(原EasyScheduler)正式通过顶级开源组织Apache基金会的投票决议,以全票通过的优秀表现正式成为Apache孵化器项目!
根据Apache基金会邮件列表显示,在包含11个约束性投票(binding votes)和2个无约束性投票(non-binding votes)的投票全部持赞同意见,无弃权票和反对票,投票顺利通过。
易观贡献的DolphinScheduler进入 Apache 孵化器,是易观开源项目的重要里程碑, DolphinScheduler社区将遵循「The Apache Way」, 秉承更加兼容并包与开放多样化的心态,由衷欢迎更多的开发者参与到社区中来,Committer虚位以待!
DolphinScheduler是一个分布式易扩展的可视化 DAG 工作流任务调度系统,致力于解决数据处理流程中错综复杂的依赖关系,同时具有强大的可视化操作界面。DolphinScheduler曾用名为“EasyScheduler”,由于名称已在国外某App使用,经社区讨论与投票后改名为DolphinScheduler,简称”DS”, 中文名 “小海豚调度”(海豚聪明、人性化,有左右脑可互相换班,终生不用睡觉)。我们希望DolphinScheduler就像它的名字一样,成为一个“开箱即用”的灵活易用的调度系统。
易观缘何开发DolphinScheduler?
2017年,易观在运营自己6.8Pb大小、6.02亿月活、每天近万个调度任务的大数据平台时,受到ETL复杂的依赖关系、平台易用性、可维护性及二次开发等方面掣肘,我们渴望找到一个具有以下功能的数据调度工具:
-
易于使用,开发人员可以通过非常简单的拖拽操作构建ETL过程。不仅对于ETL开发人员,无法编写代码的人也可以使用此工具进行ETL操作,例如系统管理员和分析师
-
解决“复杂任务依赖”问题,并且可以实时监视ETL运行状态
-
支持多租户
-
支持许多任务类型:Shell,MR,Spark,SQL(mysql,postgresql,hive,sparksql),Python,Sub_Process,Procedure等
-
支持HA和线性可扩展性
易观技术团队意识到现有开源项目没有能够达到我们要求的,因此决定自行开发这个工具。我们在2017年底设计了DolphinScheduler的主要架构;2018年5月完成第一个内部使用版本,后来我们又迭代了几个内部版本后,系统逐渐稳定下来。家有DolphinScheduler初长成
易观技术团队——这一支自百度、阿里、百分点、Ptmind、热云等团队的“数据极客”,秉持易观“让数据能力平民化”的初心,积极拥抱开源,曾贡献过Presto Hbase Connector, Presto Kudu Connector等令开发者称赞的项目。此次在公司的支持下,也积极将自己的开发的调度工具推动开源,旨在回馈开源的同时,助力打造更为强大的开源生态。
团队在2019年3月初,小范围(10多家公司)开放了DS的种子用户试用,得到了非常正能量的反馈,在4月初的正式对外开放源码后,很快就获得了许多开发人员的关注兴趣,目前github上的star现在已超过1700个,参与开发和使用的公司包括嘀嗒出行、雪球、凤凰金融、水滴互助、华润万家等。
(参见https://github.com/apache/incubator-dolphinscheduler/issues/57)
DolphinScheduler的特点
DolphinScheduler提供了许多易于使用的功能,可加快数据ETL工作开发流程的效率。其主要特点如下:
-
通过拖拽以DAG 图的方式将 Task 按照任务的依赖关系关联起来,可实时可视化监控任务的运行状态
-
支持丰富的任务类型
-
支持工作流定时调度、依赖调度、手动调度、手动暂停/停止/恢复,同时支持失败重试/告警、从指定节点恢复失败、Kill 任务等操作
-
支持工作流全局参数及节点自定义参数设置
-
支持集群HA,通过 Zookeeper实现 Master 集群和 Worker 集群去中心化
-
支持工作流运行历史树形/甘特图展示、支持任务状态统计、流程状态统计
-
支持补数,并行或串行回填数据
、
欢迎调度小伙伴加入共建世界顶级的开源项目!
目前,DolphinScheduler在中国已经拥有了一个1300多位伙伴组成的用户及开发者社区。它也被许多公司和组织广泛采用作为其ETL调度工具。我们热烈欢迎更多的用户和开发者加入到贡献的队伍中来,让我们国人开源的调度引擎在世界开源生态中占据一席之地!
感谢参与社区的贡献者!
特别感谢愿意给DolphinScheduler提供指导的champion和mentors:
Champion:
-
Sheng Wu ( Apache Incubator PMC, Apache officer, wusheng@apache.org)
Mentors:
-
Sheng Wu ( Apache Incubator PMC, Apache officer, wusheng@apache.org)
-
ShaoFeng Shi ( Apache Incubator PMC, shaofengshi@apache.org)
-
Liang Chen ( Apache Incubator PMC, Apache member, chenliang613@apache.org)
-
Furkan KAMACI ( Apache Incubator PMC, Apache member, kamaci@apache.org)
-
Kevin Ratnasekera ( Apache Incubator PMC, Apache member, djkevincr@apache.org)
initial committers:
-
William-GuoWei
(guowei20m@outlook.com)
-
Lidong Dai
(lidong.dai@outlook.com)
-
Zhanwei Qiao
(qiaozhanwei@outlook.com)
-
Liang Bao
(baoliang.leon@gmail.com)
-
Gang Li
(lgcareer2019@outlook.com)
-
Zijian Gong
(quanquansy@gmail.com)
-
Jun Gao
(gaojun2048@gmail.com)
-
Baoqi Wu
(wubaoqi@gmail.com)
积极参与的贡献者:
chongchongzi 、lfyee 、mnloveyx 、李林 、白强 、杨孟霏、胡将、王金海 、风清扬、林忠俊 、jiangzhx 、HangtongLee、hymzcn、jimmy201602、feloxx、xianhu、yangqinlong、hebin、shafi-1、mchcz、jamescheng16、xtony、chekore、LgbDemo、马泽国、刘小春、Crossoverrr、jxauwxj
此外还要感谢数百位提出issue和建议以及使用的伙伴们的贡献和大力支持;感谢在项目早期提出指导的来自华为、京东、teradata、百分点、趣头条等公司负责调度的伙伴!
特别感谢github mybatis-plus社区 ,在得知DolphinScheduler想使用mybatis-plus来支持多数据库,特地发版去掉了NPL协议;感谢易观前端团队开源的高质量 UI 组件库ans-ui!
写在最后
我们坚信将DolphinScheduler引入Apache可以推动更强大,更多样化的开源社区的发展。我们将努力践行“Community Over Code“的Apache文化,同时欢迎更多的公司和个人参与到开发者队伍中来,让DolphinScheduler社区更加健壮、健康的发展,让更多人享受开源带来的技术革命!
目前DolphinScheduler的所有源代码和所有相关文档已捐赠给Apache Software Foundation。这些代码已经在Apache License Version 2.0下:
代码库:
https://github.com/apache/incubator-dolphinscheduler
文档:
https://analysys.github.io/easyscheduler_docs_cn/
在线demo:
http://106.75.43.194:8888
为促进技术圈的茁壮发展,增进Apache DolphinScheduler使用者的交流与学习,易观举办
“Apache DolphinScheduler(incubator) User Meetup”
全国巡回活动,2019 年将陆续在北京、上海等地举行,邀请业内资深的技术专家,分享实战经验,促进互联网技术的教育。
本次巡回 Meetup首站将于10月26日在上海和大家见面,点击文末【阅读原文】,即可报名~
11月23日,北京站报名链接:
https://www.huodongxing.com/event/2510544145000
欢迎大家来交流!
Apache DolphinScheduler(incubator) User Meetup·Shanghai
Date: 2019,Oct, 26 (2019年10月26日)
Meetup Place: Fourth Floor, Building 1, Founder 1107 Yuyuan Road, Changning District, Shanghai.(上海长宁区愚园路1107号创邑1号楼4楼)
Agenda(议程):1、Introduction/overview of DolphinScheduler (William-GuoWei).2、DolphinScheduler internals, fairly technical: how DolphinScheduler works and so on (Zhanwei Qiao).3、DolphinScheduler practice(Draw up)4、DolphinScheduler from Zero to One (Draw up)5、DolphinScheduler practice(Draw up)6、Recently released features and Roadmap (Lidong Dai)7、Free discussion
附:DolphinScheduler部分功能截图
,