我在Apache DolphinScheduler的心路历练
摘要:Apache DolphinScheduler 目前是 Apache 孵化项目,目前正在快速发展中。加入Apache DolphinScheduler社区已一年多,已有 400+ 公司在生产上使用,代码+文档贡献者近200位,社区用户4000 +人。本篇文章主要介绍我在Apache DolphinScheduler的经历及收获。
主人翁介绍
姓名:陈兴春
个人简介:易观数科大数据平台测试工程师,Apache DolphinScheduler Commiter,拥有5年测试经验,平常主要负责千帆产品和DS的测试工作,喜欢专研新技术,对未知事物充满好奇心的一枚萌妹子
Apache DolphinScheduler 简述
Apache DolphinScheduler 是一个开源的分布式去中心化、易扩展的可视化DAG大数据调度系统。 于2017年在易观数科立项,2019年3月开源,于2019年8月29日通过Apache基金会投票正式成为Apache孵化器项目。
Apache DolphinScheduler致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用。可调度Shell、Python、SQL、数据存储、Spark、Flink、MR、HTTP、子流程、依赖、条件判断等任务,DAG可视化,支持自定义时间调度、历史数据补数、指定单个任务运行、任务/资源监控、重跑、停止、暂停、失败重试、恢复失败、恢复运行、告警、容错、全局参数、自定义参数、系统内置参数等功能。
结缘Apache DolphinScheduler
2019年9月,我非常荣幸的加入易观数科,同时也加入了Apache DolphinScheduler社区,开始了与DolphinScheduler的成长之旅。DolphinScheduler是我参加的第一个开源项目,也正是Apache DolphinScheduler社区,让我知道中国开源正在崛起,中国开源的力量在壮大,越来越多的开发者及公司正在积极的拥抱开源。
入选commiter之路
初入DolphinScheduler社区时,@dailidong 冬哥说了一句让我至今也印象深刻的话:兴春,争取早日成为commiter。当时的我是不相信自己能成为commiter的,因为我不是开发,感觉没机会提交pr,何谈成为commiter。但是后面了解到成为commiter,不仅只有提交pr一条道路,只要为社区贡献一份力量,问题答疑、贡献文章、文档、社区运营宣传,都有机会成为commiter。
前期在@qiaozhanwei 占卫的帮助下,细心的帮我讲解DolphinScheduler业务、架构、部署以及各个服务之间的实现与联系,加上自己对linux、shell脚本、python、数据库及代码部署等有较好的基础,因此在短时间内就熟练的掌握DolphinScheduler并开始接管测试工作,把控DolphinScheduler每次发版质量的最后一道关卡。平时除了测试DolphinScheduler的业务,开始在社区进行答疑,处理GitHub上的issue,修改官网的文档。在测试V1.1.0到V1.2.0升级脚本时,发现install.sh中数据库类型为postgresql时,数据库连接却用的mysql,因此我的第一个pr产生了,哪怕只是改了一个简单的mysql,却是一个里程碑的开始,因为无数的pr及勇气都是第一个pr奠定的基石。后期经过不断的贡献与坚持,终于赶上第二批commiter的选拔,并成功入选成为DolphinScheduler的commiter。
当然,成为commiter不应该是加入开源项目的终极目标。成为commiter,拥有更大的操作权限,能更方便、更快捷的服务社区,同时对于项目及社区的发展与壮大,更多了一份责任,只有项目变强且被更多人及公司认可时,commiter的头衔才会变得更有意义。
社区氛围
社区最近多次在线上讨论master重构,经过几次会议后,加入讨论的社区人员越来越多,大家各抒己见,讨论技术实现的利与弊。作为一个测试人员,也许我不能提出专业的技术建议,也许整场会议我没有发言,但是我从不会缺席。在技术讨论过程中,我会关注开发的实现方式和逻辑,在后期测试的时候,我才能发现更多隐藏的测试点以及容易忽视的细节。
在DolphinScheduler社区,认识了很多大神,每天都在进行大脑风暴,讨论技术、架构及需求实现。他们利用自己休闲娱乐的时间,不断的为DolphinScheduler出谋划策,完善DolphinScheduler的功能,解决github上的issue。在他们身上,总能学到很多东西,不仅是在技术层面,更重要的是那份为了开源项目无私奉献的精神。也正是大家的贡献以及社区小伙伴的认可,社区用户群从当初的1个群增加到8个群,外加2个开发群,而且还在不断扩大,代码Contributors也从当初的1个人增长到148个,文档贡献者也有近50人了。还有一件非常值得庆贺的事情,Apache DolphinScheduler 2020年在数百个开源项目评选中脱颖而出荣获十大开源新锐项目。
测试难点
开源项目没有产品经理,没有专业的UI设计,所有的需求及实现来自社区,对于UI和功能点的测试其实是有难度的。质量把控没有一个参考标准,也没有一个详细的产品说明,这对于测试有相当大的考验,许多的测试点只能根据已实现的功能去测试。当然,DolphinScheduler目前对于社区提的feature,在技术实现之前需要完善issue文档,提的pr也需关联对应issue,让每一个pr都有据可查,但是对于细节的处理及测试点,还是需要测试人员去挖掘。
社区问题的复现也是一大难题。社区提的BUG,虽然有格式说明,但仍然存在不按照格式要求写的情况,有时复现步骤或一个关键因素没描述清楚,就导致问题无法复现,因此需要不断引导用户、猜测发生场景及确认问题。有时一个issue可能需要花大量时间和精力去复现,最终可能是配置或者环境原因导致的,但是只要能帮用户解决问题,心里还是非常开心且有满足感。而且我是非常欢迎用户提issue的,因为这说明有用户在使用并关注DolphinScheduler,所以对每一个issue,我们都应该用心去关注并帮忙解决,如果有一天没有用户提issue,这才是我们该担忧的事情。
未来期许
Apache DolphinScheduler正在拙壮成长,希望早日毕业成为顶级项目,而且我也坚信通过社区的力量与努力,DolphinScheduler一定会开辟出自己的一片天地,被越来越多的人熟知及应用。也希望广大同胞们的日子就如DolphinScheduler的slogan一样“调度选得好、下班回家早、调度选得对、回家安心睡”。同时,DolphinScheduler也欢迎更多的小伙伴加入社区,加入开源的队伍,为开源贡献一份力所能及的力量。
如何加入Apache DolphinScheduler社区
在线DEMO: http://106.75.43.194:8888/
官网:https://dolphinscheduler.apache.org/
开源地址: https://github.com/apache/incubator-dolphinscheduler
订阅开发邮件:https://dolphinscheduler.apache.org/zh-cn/docs/development/subscribe.html
强烈推荐订阅开发邮件列表,实时获取社区最新信息。
公众号 : 海豚调度
我在Apache DolphinScheduler的心路历练的更多相关文章
- 社区之光:我和 Apache DolphinScheduler 的这一年
背景 没错,本文的主人翁就是那个在多个 DolphinScheduler 用户群超级活跃,"孜孜不倦" 地给用户各种答疑的小伙,如果你在群里问过问题,伯毅多半概率回答过,哈哈,今天 ...
- Apache DolphinScheduler(海豚调度) - 1.3 系列核心表结构剖析
Apache DolphinScheduler 是一个分布式去中心化,易扩展的可视化 DAG 工作流任务调度系统.致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用. 近日 ...
- 本周六 Apache DolphinScheduler & Doris 将联合线上 Meetup
活动背景 2020年,大数据成为国家基建的一个重要组成,大数据在越来越多的领域展现威力.随着大数据的应用场景越来越多,大家对数据的响应速度和数据加工工作流的方便程度也提出了更高的要求.在这种背景下,相 ...
- Apache DolphinScheduler新一代分布式工作流任务调度平台实战-上
概述 定义 dolphinscheduler 官网地址 https://dolphinscheduler.apache.org/ dolphinscheduler GitHub地址 https://g ...
- Apache DolphinScheduler 3.0.0 正式版发布!
点亮 ️ Star · 照亮开源之路 GitHub:https://github.com/apache/dolphinscheduler 版本发布 2022/8/10 2022 年 8 ...
- 日均 6000+ 实例,TB 级数据流量,Apache DolphinScheduler 如何做联通医疗大数据平台的“顶梁柱”?
作者 | 胡泽康 鄞乐炜 作者简介 胡泽康 联通(广东)产业互联网公司 大数据工程师,专注于开源大数据领域,从事大数据平台研发工作 鄞乐炜 联通(广东)产业互联网公司 大数据工程师,主要从事大数据平 ...
- 数据平台调度升级改造 | 从Azkaban 平滑过度到 Apache DolphinScheduler 的操作实践
Fordeal的数据平台调度系统之前是基于Azkaban进行二次开发的,但是在用户层面.技术层面都存在一些痛点问题难以被解决.比如在用户层面缺少任务可视化编辑界面.补数等必要功能,导致用户上手难体验差 ...
- 倒计时2日!基于 Apache DolphinScheduler&TiDB 的交叉开发实践,从编写到调度让你大幅提升效率
当大数据挖掘成为企业赖以生存.发展乃至转型的生命,如何找到一款好软件帮助企业满足需求,成为了许多大数据工程师困扰的问题.但在当下高速发展的大数据领域,光是一款好软件似乎都不足以满足所有场景业务需求,许 ...
- 感谢有你!Apache DolphinScheduler 项目 GitHub star 突破 8k
本周伊始,Apache DolphinScheduler 项目在 GitHub 上的 Github Star 总数首次突破 8K.目前,Apache DolphinScheduler 社区已经拥有 C ...
随机推荐
- 安装PostgreSQL到CentOS(YUM)
运行环境 系统版本:CentOS Linux release 7.6.1810 (Core) 软件版本:postgresql-12 硬件要求:无 安装过程 1.安装YUM-PostgreSQL存储库 ...
- 每天一个 HTTP 状态码 103
103 Early Hints 103 Earyly Hints 是被用于在最终 HTTP 消息前返回一些响应头,常和 HTTP Header: Link 一起使用,让客户端在服务器还在准备(当前的这 ...
- 在vue中路径中的@
1.在Vue的路径中@等于src 2.在css的路径中~@等于src
- 【clickhouse专栏】单机版的安装与验证
<clickhouse专栏>第三节内容,先安装一个单机版的clickhouse,是后续学习多副本或者分布式集群安装的基础内容.但基本的clickhouse是不依赖于zookeeper的,只 ...
- React中render Props模式
React组件复用 React组件复用的方式有两种: 1.render Props模式 2.高阶组件HOC 上面说的这两种方式并不是新的APi. 而是利用Raect自身的编码特点,演化而来的固定编码写 ...
- Redis入门到精通01
Redis入门到精通 目录 Redis入门到精通 一.Redis缓存框架基本介绍 1.1Redis的应用场景 二.Redis的安装方式 2.1Windows操作系统安装Redis 2.2Linux操作 ...
- Elasticsearch学习系列七(Es分布式集群)
核心概念 集群(Cluster) 一个Es集群由多个节点(Node)组成,每个集群都有一个共同的集群名称作为标识 节点(Node) 一个Es实例就是一个Node.Es的配置文件中可以通过node.ma ...
- FFT 学习笔记(自认为详细)
引入 什么是 \(\text{FFT}\) ? 反正我看到 \(\text{wiki}\) 上是一堆奇怪的东西. 快速傅里叶变换(英语:Fast Fourier Transform, FFT),是快速 ...
- 洛谷P4017 最大食物链数量 dfs
老规矩,传送门 做题从头到尾的思路: 1. 这个题明显就是dfs数数量了,简单,邻接矩阵干他! TLE警告,8个点 额... 2. 老师说这玩意不能邻接矩阵?没事,还有邻接表,再来! 再次TLE 8个 ...
- 2022宁波市第五届网络安全大赛MISC方向部分wp
BlackAndWhite 1. 得到了三百多张黑白颜色的图片,将白色图片转为数字0,黑色图片转为数字1,得到二进制字符串 01100110011011000110000101100111011110 ...