()
“欢迎来到阿帕奇孵化器,多芬调度器!”
美国时间2019年8月29日,易观开源的分布式任务调度引擎DolphinScheduler(原EasyScheduler)正式通过顶级开源机构Apache Foundation的投票决议,以全票通过的优异表现正式成为Apache孵化器项目!
根据阿帕奇基金会的邮寄名单,包括11张有约束力的选票和2张无约束力的选票在内的所有选票均为赞成票,没有弃权或反对票,投票成功通过。
易观贡献的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等。
高可用性和线性可扩展性支持
易观国际的技术团队意识到现有的开源项目都不能满足我们的需求,所以他们决定自己开发这个工具。我们在2017年底设计了DolphinScheduler的主架构;第一个内部版本于2018年5月完成。后来我们迭代了几个内部版本,系统逐渐稳定下来。家里的DolphinScheduler刚刚长大。
来自百度、阿里、Percent、Ptmind、热云等团队的“数据极客”易观技术团队——,秉承易观“让数据能力平民化”的初心,积极拥抱开源,为Presto H Base Connector、Presto Kudu Connector等开发者称赞的项目贡献力量。这一次,在公司的支持下,我们也在用自己的调度工具积极推广开源,旨在回馈开源,帮助构建更强大的开源生态。
2019年3月初,团队在小范围内(10多家公司)开启了DS种子用户的试用,得到了非常积极的反馈。4月初源代码正式对外开放后,迅速获得了众多开发者的关注。目前github上有1700多颗星,参与开发使用的公司包括迪达股份有限公司、雪球、凤凰金融、水帝胡珠、华润万家等。
(参见https://github.com/Apache/孵化器-dolphinscheduler/issues/57)
海豚调度器的特点
DolphinScheduler提供了许多易于使用的功能,加快了数据ETL工作开发过程的效率。其主要特点如下:
通过拖放,可以根据任务的依赖关系,用DAG图链接任务,实时可视化监控任务的运行状态。
支持丰富的任务类型
支持工作流调度、依赖调度、手动调度、手动暂停/停止/恢复、故障重试/告警、从指定节点恢复故障、Kill任务等操作。
支持工作流全局参数和节点自定义参数设置。
支持集群HA,通过Zookeeper实现主集群和工作者集群的去中心化。
支持工作流运行历史树/甘特图显示、任务状态统计和流程状态统计。
支持补码、并行或串行循环。
填数据、
欢迎调度小伙伴加入共建世界顶级的开源项目!
目前,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)
wxdppx 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 、李林 、白强 、swdtk、沉默的睫毛、hsdbl 、dxn、畅快的冰淇淋 、jiangzhx 、HangtongLee、hymzcn、老实的纸飞机201602、feloxx、xianhu、nqdyj、hebin、shafi-1、mchcz、jamescheng16、xtony、chekore、LgbDemo、冷傲的魔镜、zgdbq、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部分功能截图