写点什么

全票通过!易观开源项目 DolphinScheduler 进入 Apache 孵化器

  • 2019-09-17
  • 本文字数:2126 字

    阅读完需:约 7 分钟

全票通过!易观开源项目DolphinScheduler进入Apache孵化器

美国时间 2019 年 8 月 29 日,易观开源的分布式任务调度引擎 DolphinScheduler(原 EasyScheduler)正式通过顶级开源组织 Apache 基金会的投票决议,以全票通过的优秀表现正式成为 Apache 孵化器项目。


根据 Apache 基金会邮件列表显示,在包含 11 个约束性投票(binding votes)和 2 个无约束性投票(non-binding votes)的投票全部持赞同意见,无弃权票和反对票,投票顺利通过。


“Welcome to Apache incubator,DolphinScheduler!”



易观贡献的 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 初长成

易观 DS 团队——这一支自百度、阿里、百分点、Ptmind、热云等团队的“数据极客”,秉持易观“让数据能力平民化”的初心,积极拥抱开源,曾贡献过 Presto Hbase Connector, Presto Kudu Connector 等令开发者称赞的项目。此次在公司的支持下,也积极将自己的开发的调度工具推动开源,旨在回馈开源的同时,助力打造更为强大的开源生态。


易观 DS 团队在 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,以及数百位提出 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


2019-09-17 13:076066

评论 2 条评论

发布
用户头像
so awesome
2020-03-07 08:06
回复
用户头像
欢迎大家关注: https://github.com/apache/incubator-dolphinscheduler, 欢迎任何形式的建议和贡献!一起让DolphinScheduler成为优秀作品!
2019-09-24 14:57
回复
没有更多了
发现更多内容

微服务架构中,二次浅封装实践

架构 分布式 微服务 技术栈 二次封装

模块四作业-redis 存储方案设计 - 学生考试试卷

Geek_cb2b43

【高并发】深度解析ScheduledThreadPoolExecutor类的源代码

冰河

Java 并发编程 多线程 高并发 异步编程

Apache Pulsar 与 Apache Kafka 在金融场景下的性能对比分析

Apache Pulsar

大数据 kafka 架构 云原生 Apache Pulsar

终于有人将Github星标百万的Spring技术精髓收录成册

热爱java的分享家

Java 面试 程序人生 springboot 经验分享

考试试卷存储方案

天天向上

架构实战营

元宇宙:区块链时代的新名字

CECBC

Go语言学习查缺补漏ing Day3

Regan Yue

Go 语言 11月日更

调优达到上限?这份尊享版性能实战套餐,让你领先别人好几个级别

热爱java的分享家

Java 面试 程序人生 编程语言 经验分享

第四模块总结

张靖

架构训练营

🏆【Alibaba中间件技术系列】「RocketMQ技术专题」让我们一起实践RocketMQ的服务搭建及配置操作

码界西柚

RocketMQ 11月日更 Apache RocketMQ 集群搭建

你敢相信?我用了3个月成功破茧成蝶,从简历被拒到收割8个大厂offer

热爱java的分享家

Java 面试 程序人生 编程语言 经验分享

堪称数据库的天花板,极致经典的字节内部MySQL宝典意外流出!

热爱java的分享家

Java 面试 程序人生 编程语言 经验分享

主客体建模法

少个分号

微服务治理之自适应降载

万俊峰Kevin

微服务 微服务架构 服务治理 go-zero Go 语言

Hive基本理论和常用函数

犟马骝

Pulsar VS. Kafka(1): 统一的消息消费模型(Queue + Stream)

Apache Pulsar

kafka 架构 云原生 Apache Pulsar 消息中间件

【LeetCode】N 叉树的最大深度Java题解

Albert

算法 LeetCode 11月日更

nginx配置详解

小鲍侃java

11月日更

字节跳动面试官:SpringBoot统一接口返回和全局异常处理怎么玩?

热爱java的分享家

Java 架构 程序人生 编程语言 经验分享

区块链技术革命才刚刚开始

CECBC

css布局之全屏布局

Augus

CSS 11月日更

区块链和人工智能是否可以保护森林不再被砍伐?

CECBC

遇到了几道关于作用域的前端小题

空城机

JavaScript 大前端 11月日更

Pulsar VS. Kafka(2): 以Segment为中心的架构

Apache Pulsar

kafka 架构 分布式 Apache Pulsar 消息中间件

不可思议,阿里巴巴首发:Java核心框架指导手册,竟1小时点击量破千万

热爱java的分享家

Java 面试 程序人生 编程语言 经验分享

明道云对接企查查,一键矫正客户信息

明道云

架构实战营模块四作业

孙志强

架构实战营

极客时间算法训练营Week01

jjn0703

算法训练营

flutter中的列表的性能优化前奏

坚果

flutter 11月日更

真香!Github一夜爆火,阿里性能优化不传之秘终于开源

热爱java的分享家

Java 程序人生 性能优化 编程语言 经验分享

全票通过!易观开源项目DolphinScheduler进入Apache孵化器_语言 & 开发_代立冬_InfoQ精选文章