You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by gi...@apache.org on 2021/07/20 08:19:17 UTC

[dolphinscheduler-website] branch asf-site updated: Automated deployment: af5d56498a0cda84248e7eaef6b11a3f0c441494

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 3a3e1e5  Automated deployment: af5d56498a0cda84248e7eaef6b11a3f0c441494
3a3e1e5 is described below

commit 3a3e1e5b7c7c1142f54defb7b701c4e5db839cbd
Author: github-actions[bot] <gi...@users.noreply.github.com>
AuthorDate: Tue Jul 20 08:19:06 2021 +0000

    Automated deployment: af5d56498a0cda84248e7eaef6b11a3f0c441494
---
 zh-cn/blog/DS_architecture_evolution.html | 48 +++++++++++++++++++++++++------
 zh-cn/blog/DS_architecture_evolution.json |  2 +-
 2 files changed, 41 insertions(+), 9 deletions(-)

diff --git a/zh-cn/blog/DS_architecture_evolution.html b/zh-cn/blog/DS_architecture_evolution.html
index 97ae393..6f4d887 100644
--- a/zh-cn/blog/DS_architecture_evolution.html
+++ b/zh-cn/blog/DS_architecture_evolution.html
@@ -12,18 +12,31 @@
 </head>
 <body>
   <div id="root"><div class="blog-detail-page" data-reactroot=""><header class="header-container header-container-dark"><div class="header-body"><a href="/zh-cn/index.html"><img class="logo" src="/img/hlogo_white.svg"/></a><div class="search search-dark"><span class="icon-search"></span></div><span class="language-switch language-switch-dark">En</span><div class="header-menu"><img class="header-menu-toggle" src="/img/system/menu_white.png"/><div><ul class="ant-menu whiteClass ant-menu-li [...]
-<p>[toc]</p>
+<h2>引言</h2>
+<p>来自 eBay 的文俊同学在近期的上海开源大数据 Meetup 上做了十分精彩的 “Apache DolphinScheduler 的架构演进” 分享。本次分享有近 200 人参与,在线观看次数超过 2,500 次</p>
 <h2>演讲者介绍</h2>
-<p>阮文俊,eBay开发工程师,DolphinScheduler贡献者。</p>
-<p>视频分享参见https://www.bilibili.com/video/BV11M4y1T7VT?from=search&amp;seid=4448322552403036491</p>
+<p>阮文俊,eBay 开发工程师,DolphinScheduler 贡献者。</p>
+<p>视频分享参见
+<a href="https://www.bilibili.com/video/BV11M4y1T7VT"><img src="https://user-images.githubusercontent.com/15833811/126284089-249f1084-f1bf-40b2-bbd8-892f2ff28a31.png" alt=" DolphinScheduler 架构演进及如何参与开源经验分享 "></a></p>
 <h2>Apache DolphinScheduler介绍</h2>
 <p>Apache DolphinScheduler是一个分布式去中心化,易扩展的可视化DAG工作流任务调度平台。致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用。DolphinScheduler以有向无环图的方式将任务连接起来,可实时监控任务的运行状态,同时支持取消、暂停、恢复、从指定任务节点重跑等操作。</p>
 <p>DolphinScheduler具有以下几个优良功能特性:</p>
 <ul>
-<li><strong>简单易用</strong>,提供可视化的工作流编排能力,可通过拖拉拽任务定制DAG,支持一键部署</li>
-<li><strong>高可靠性</strong>,整个调度系统高度可用,各个组件具备自我容错能力</li>
-<li><strong>高可扩展性</strong>,采用去中心化的多master+多worker的设计框架,集群可用横向扩展,并支持节点的动态上下线</li>
-<li><strong>丰富的使用场景</strong>,DolphinScheduler为面向复杂的使用场景,所有扩展点都采用插件化的实现方式</li>
+<li>
+<p><strong>Cloud Native</strong> — 支持多云/数据中心工作流管理,也支持 Kubernetes、Docker 部署和自定义任务类型,分布式调度,整体调度能力随集群规模线性增长</p>
+</li>
+<li>
+<p><strong>高可靠与高可扩展性</strong> — 去中心化的多 Master 多 Worker 设计架构,支持服务动态上下线,自我容错与调节能力</p>
+</li>
+<li>
+<p><strong>支持多租户</strong></p>
+</li>
+<li>
+<p><strong>丰富的使用场景</strong> — 包括流、暂停、恢复操作,以及额外的任务类型,如 Spark、Hive、MR、Shell、Python、Flink 以及 DS 独有的子工作流、任务依赖设计,扩展点采用插件化的实现方式</p>
+</li>
+<li>
+<p><strong>简单易用</strong> — 所有流程定义操作可视化编排,定义关键信息一目了然,一键部署</p>
+</li>
 </ul>
 <p>关于DolphinSheduler更多功能介绍和开发文档请查阅官网详细信息https://dolphinscheduler.apache.org/zh-cn/。</p>
 <h2>架构演进过程</h2>
@@ -67,12 +80,30 @@
 <li><strong>彻底的插件化</strong>,所有扩展点都采用插件化实现</li>
 <li><strong>数据血缘关系分析</strong></li>
 </ul>
+<h4>1 去分布式锁</h4>
+<p><img src="https://user-images.githubusercontent.com/15833811/126285801-ae58d9c6-e1fe-4cba-b7fd-26098824caf9.png" alt="image"></p>
+<h4>2 重构 master 中的线程模型</h4>
+<p><img src="https://user-images.githubusercontent.com/15833811/126285993-a4130bed-7eb2-4af1-a728-8b06a7b51089.png" alt="image">
+SchedulerThread 负责从数据库中查询 Command 并提交到 Command Queue</p>
+<p>DagExecuteThreadPool 从 Command Queue 中取 command,并构造 DAG实例添加到 DAG 队列,进行处理,当前 DAG 没有未执行的任务,则当前 DAG 执行结束</p>
+<p>TaskExecuteThreadPool 提交任务给 Worker</p>
+<p>TaskEventThread 监听任务事件队列,修改任务状态</p>
+<h4>3 彻底的插件化</h4>
+<p><img src="https://user-images.githubusercontent.com/15833811/126286101-d8003d09-df84-4fe5-a92c-f733da450b33.png" alt="image"></p>
+<p>所有扩展点都采用插件化实现</p>
+<p>告警SPI</p>
+<p>注册中心SPI</p>
+<p>资源存储SPI</p>
+<p>任务插件SPI</p>
+<p>数据源SPI</p>
+<p>……</p>
 <h2>Apache DolphinScheduler发展方向</h2>
 <p>开发者阮文俊针对dolphinsheduler的未来发展方向,也分享了一些看法:</p>
 <ul>
 <li>系统更稳、速度更快(高吞吐、低延迟、智能化运维、高可用)</li>
 <li>支持更多的任务集成(深度学习任务、CI/CD等其它系统集成、存储过程和数据质量任务、容器调度任务、复杂调度场景等)</li>
-<li>轻量化dolphinscheduler内核,提供基础调度服务</li>
+<li>轻量化dolphinscheduler内核,提供基础调度服务
+<img src="https://user-images.githubusercontent.com/15833811/126286160-8987ccf8-a2c6-4e3d-a2ee-881e66e527e6.png" alt="image"></li>
 </ul>
 <h2>如何参与开源贡献</h2>
 <p>最后,开发者阮文俊针对入门新手如何参与开源贡献的问题,提出了宝贵的指导意见:</p>
@@ -82,6 +113,7 @@
 <li>坚持开源精神,乐于帮助他人</li>
 <li>持之以恒</li>
 </ul>
+<p><img src="https://user-images.githubusercontent.com/15833811/126285232-152b8b7f-5d43-439f-ae7f-77b4ece50fe6.png" alt="现场图"></p>
 </section><footer class="footer-container"><div class="footer-body"><div><h3>联系我们</h3><h4>有问题需要反馈?请通过以下方式联系我们。</h4></div><div class="contact-container"><ul><li><img class="img-base" src="/img/emailgray.png"/><img class="img-change" src="/img/emailblue.png"/><a href="/zh-cn/community/development/subscribe.html"><p>邮件列表</p></a></li><li><img class="img-base" src="/img/twittergray.png"/><img class="img-change" src="/img/twitterblue.png"/><a href="https://twitter.com/dolphinschedule"><p>Twitt [...]
   <script src="//cdn.jsdelivr.net/npm/react@15.6.2/dist/react-with-addons.min.js"></script>
   <script src="//cdn.jsdelivr.net/npm/react-dom@15.6.2/dist/react-dom.min.js"></script>
diff --git a/zh-cn/blog/DS_architecture_evolution.json b/zh-cn/blog/DS_architecture_evolution.json
index af2447e..4fb9988 100644
--- a/zh-cn/blog/DS_architecture_evolution.json
+++ b/zh-cn/blog/DS_architecture_evolution.json
@@ -1,6 +1,6 @@
 {
   "filename": "DS_architecture_evolution.md",
-  "__html": "<h1>Apache DolphinScheduler 架构演进及开源经验分享</h1>\n<p>[toc]</p>\n<h2>演讲者介绍</h2>\n<p>阮文俊,eBay开发工程师,DolphinScheduler贡献者。</p>\n<p>视频分享参见https://www.bilibili.com/video/BV11M4y1T7VT?from=search&amp;seid=4448322552403036491</p>\n<h2>Apache DolphinScheduler介绍</h2>\n<p>Apache DolphinScheduler是一个分布式去中心化,易扩展的可视化DAG工作流任务调度平台。致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用。DolphinScheduler以有向无环图的方式将任务连接起来,可实时监控任务的运行状态,同时支持取消、暂停、恢复、从指定任务节点重跑等操作。</p>\n<p>DolphinScheduler具有以下几个优良功能特性:</p>\n<ul>\n<li><s [...]
+  "__html": "<h1>Apache DolphinScheduler 架构演进及开源经验分享</h1>\n<h2>引言</h2>\n<p>来自 eBay 的文俊同学在近期的上海开源大数据 Meetup 上做了十分精彩的 “Apache DolphinScheduler 的架构演进” 分享。本次分享有近 200 人参与,在线观看次数超过 2,500 次</p>\n<h2>演讲者介绍</h2>\n<p>阮文俊,eBay 开发工程师,DolphinScheduler 贡献者。</p>\n<p>视频分享参见\n<a href=\"https://www.bilibili.com/video/BV11M4y1T7VT\"><img src=\"https://user-images.githubusercontent.com/15833811/126284089-249f1084-f1bf-40b2-bbd8-892f2ff28a31.png\" alt=\" DolphinScheduler 架构演进及如何参与开源经验分享 \"></a></p>\n<h2>Apac [...]
   "link": "/dist/zh-cn/blog/DS_architecture_evolution.html",
   "meta": {}
 }
\ No newline at end of file