在众多企业都在进行数字化转型的大背景下,大数据、人工智能等行业有着十分广阔的前景,其发展也可谓如火如荼。发展过程中这其中当然离不开数据采集、数据流通和数据价值挖掘等各种环节,而各环节的打通需要一个坚实底座来作为支撑,这个支撑就是今天要聊的大数据调度系统。

1

大数据调度介绍

多年来,谈到开源的大数据调度,大家可能一想到的就是 oozie、azkaban 等,这其中有没有痛点呢? 当然有,是否稳定、高可用一直都是各个调度的巨大痛点。在大数据中,其他服务可以挂,但调度不能挂的首要要求,是否能很简单易用,能不能不编程就建立工作流,可视化拖拉拽就完成工作流 pipeline 配置等痛点促使了海豚调度( DolphinScheduler 中文名 )的诞生。这也是第一个由国人主导并贡献到 Apache 基金会的大数据调度方向的项目。

Apache DolphinScheduler(incubator) 自 17 年在易观立项之初就确定了使命 - “解决大数据任务之间错综复杂的依赖关系,使整个数据处理流程直观可见”。DolphinScheduler 以 DAG(有向无环图) 的方式将 Task 组装起来,可实时监控任务的运行状态,同时支持重试、从指定节点恢复失败、暂停及 Kill 任务等操作。DolphinScheduler 专注于以下 6 个主要能力

DolphinScheduler 19 年 3 月开源,8 月进入 Apache 孵化器, 据不完全统计,截止 2020 年 10 月,已有 400+ 公司在生产上使用。自今年来,有越来越多的技术小伙伴在选型调度时会主动寻求加入到 DolphinScheduler 的微信用户群社区。

说到社区,就需要提到 Apache 组织最广为传颂的成功之道 - “社区大于代码”,DolphinScheduler 目前微信用户群 4000+ 人,社区目前有  200 + 贡献者,来自 100+ 家公司、机构和高校(部分统计)

2

DolphinScheduler 特点

  • 以 DAG 图的方式将 Task 按照任务的依赖关系关联起来,可实时可视化监控任务的运行状态

  • 支持丰富的任务类型:Shell、MR、Spark、Flink、SQL(mysql、postgresql、hive、sparksql)、Python、Http、Sub_Process、Procedure 等

  • 支持工作流定时调度、依赖调度、手动调度、手动暂停/停止/恢复,同时支持失败重试/告警、从指定节点恢复失败、Kill 任务等操作

  • 支持工作流优先级、任务优先级及任务的故障转移及任务超时告警/失败

  • 支持工作流全局参数及节点自定义参数设置

  • 支持资源文件的在线上传/下载,管理等,支持在线文件创建、编辑

  • 支持任务日志在线查看及滚动、在线下载日志等

  • 实现集群 HA,通过 Zookeeper 实现 Master 集群和 Worker 集群去中心化

  • 支持对 Master/Worker cpu load,memory,cpu 在线查看

  • 支持工作流运行历史树形/甘特图展示、支持任务状态统计、流程状态统计

  • 支持补数

  • 支持多租户

  • 支持国际化

3

架构与工作流程图

4

部分用户案例

DolphinScheduler 在易观千帆中的应用

易观千帆是一款 App 对标分析产品。千帆是每天需要处理数百亿条数据,月活 6.2亿,6.8 PB 的大数据集群经过每天上万个任务 ETL 处理加工而产生的 SaaS 服务应用。

2018年开始使用 DolphinScheduler 来调度整个 ETL 过程。

右图是其中一条工作流

DolphinScheduler 在 360奇安信的应用

一条示例工作流:

据不完全统计,截止 2020 年 10 月,已经有 400 + 家公司及机构采用 DolphinScheduler 在生产环境使用,以下是部分案例(排名不分先后)

此外,还有 2000+ 用户注册了 demo 试用( http://106.75.43.194:8888 ),欢迎大家体验,十分欢迎对比哈。

5

DolphinScheduler Slogan

6

DolphinScheduler 所获奖项

新一代大数据任务调度 -  Apache DolphinScheduler(incubator) 在 2020 年接连获得由 InfoQ 主办的 “2020 年度十大开源新锐项目” 和 “2020 年度最具人气新锐项目” 以及 OSCHINA 年度 “最佳技术团队” 称号,非常欢迎更多小伙伴加入到贡献队伍中来,为中国的开源崛起贡献自己的一份力量。

7

参与贡献

近 2 年随着国内开源的迅猛崛起,DolphinScheduler 社区迎来了十分蓬勃的发展,为了做更好用、易用的调度,真诚欢迎热爱开源的伙伴加入到开源社区中来,为中国开源崛起献上一份自己的力量,让本土开源走向全球

参与 DolphinScheduler 社区有非常多的参与贡献的方式,包括:

贡献第一个PR(文档、代码) 我们也希望是简单的,第一个PR用于熟悉提交的流程和社区协作以及感受社区的友好度。

社区汇总了以下适合新手的问题列表:https://github.com/apache/incubator-dolphinscheduler/issues/4124

如何参与贡献链接:https://dolphinscheduler.apache.org/zh-cn/docs/development/contribute.html

来吧,DolphinScheduler开源社区需要您的参与,为中国开源崛起添砖加瓦吧,哪怕只是小小的一块瓦,汇聚起来的力量也是巨大的。

参与开源可以近距离与各路高手切磋,迅速提升自己的技能,如果您想参与贡献,我们有个贡献者种子孵化群,可以添加社区小助手

微信(easyworkflow) 手把手教会您( 贡献者不分水平高低,有问必答,关键是有一颗愿意贡献的心 )。添加小助手微信时请说明想参与贡献哈

来吧,开源社区非常期待您的参与。

DolphinScheduler's Github Repo 传送门

↓↓↓

https://github.com/apache/incubator-dolphinscheduler

喜欢️ DolphinScheduler 的话,别忘了 Star 收藏一下哟~

最新文章

  1. MySQL数据库不能远程访问的解决办法
  2. iOS开发UI篇—CAlayer(自定义layer)
  3. 天气预报API开发
  4. python中常用的模块的总结
  5. 802.11MAC基础
  6. UVALive - 4513 Stammering Aliens ——(hash+二分 || 后缀数组加二分)
  7. hdu 1863 - 畅通工程(MST)
  8. 使用JavaScript在项目前台开发的58种常用小技巧
  9. (转)js activexobject调用客户机exe文件
  10. Startup key combinations for Intel-based Macs
  11. android xml解析 sax
  12. SQL的自增列重置的方法
  13. Visual Studio for Mac 初体验
  14. 一步步带你做vue后台管理框架(三)——登录功能
  15. 关于matlab2018a版本错误使用 svmclassify 分类器
  16. NIO学习资料
  17. caffe arm
  18. Dapper基础入门
  19. dubbo见解
  20. Mysql tinyint长度为1时在java中被转化成boolean型

热门文章

  1. 2020级C++实验课-期末机考模拟考题解
  2. Fail2ban 命令详解 fail2ban-regex
  3. Python <算法思想集结>之初窥基础算法
  4. jQuery基础入门+购物车案例详解
  5. CF1625D - Binary Spiders[trie树优化dp]
  6. Flink使用Pod Template将状态快照(Checkpoint、Savepoint)存储在NFS
  7. docker安装RabbitMQ及安装延迟插件
  8. netty系列之:我有一个可扩展的Enum你要不要看一下?
  9. 关于使用koa实现线上 https服务
  10. SAP 实例 9 Text output