暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【第 21 期】Apache DolphinScheduler 每周 FAQ 集锦

海豚调度 2023-09-08
563




点击蓝字 关注我们





答疑 | 钟嘉杰
编辑整理 | Debra Chen

摘要

为了让 Apache DolphinScheduler 的广大用户和爱好者对于此项目的疑问得到及时快速的解答,社区特发起此次【每周 FAQ】栏目,希望可以解决大家的实际问题。


关于本栏目的要点:

  1. 本栏目每周将通过腾讯文档(每周更新)从社区微信群收集 10-30 个问答,并在每周五整理具有典型代表意义的问答后发布,供大家参考。

  2. 所有人均可登录文档并提出问题,每人限 2 个提问,提问范围包括:

    1. 关于 Apache DolphinScheduler 的使用问题和技术性问题;

    2. 在实际应用中遇到的瓶颈问题;

    3. 参与社区贡献遇到的困难;

    4. 关于社区发展的疑问。

  3. 资源有限,请勿提问项目无关问题。

  4. 【每周FAQ】是一个社区互助的项目,发起宗旨是鼓励社区成员相互帮助,因此,欢迎大家积极踊跃志愿回答提出的疑问,在腾讯文档中写下答案即可。(高手们都别“潜水”了,出来露一手😜😎)

  5. 在社群里已经提问的问题,请勿在文档中重复提问,节约资源。

  6. 本栏目招募志愿者,有兴趣参与的小伙伴请加微信小助手 Leonard ds 报名。





8月26日-9月1日




DolphinScheduler解析DAG,处理Flink Stream等实时任务节点时,从代码逻辑看,将该节点标记为禁止执行节点进行处理。

因此运行工作流定义时,实时任务节点将会跳过,需要手动先将实时任务点击起来。


在设计上,是否可以运行DAG时,先将所有实时节点按照DAG的顺序启动,再按照DAG顺序运行其他任务节点?这样便可以让实时节点按照DAG顺序调度启动,也不需要手动点击启动实时节点。


我想询问一下上述设计思路是否合理,现在社区关于实时任务的设计思路出于什么考量,后续社区关于实时任务调度的计划是什么?

设计上实时任务启停是单独控制的,和DAG运行没有关系,DAG运行会跳过该节点执行;在DAG中展示是为了保留任务血缘关系。

目前使用Dolphin3.1.7版本,有一个功能使用上的问题,比如我们想在任务级联重跑的时候,去掉flow的限制,将一个任务血缘链路中的所有上游任务或者下游任务进行级联重跑,请问目前的版本(或者roadmap的规划)支持这样的场景吗?我在官方文档和web控制台上没有找到类似的功能入口或设计说明。

目前没有相关的议题,白鲸开源的商业版本种有类似方案,社区在与其沟通争取早日同步到社区。

3.1.8版本资源中心不同用户(用户所属不同租户)之间创建/上传同名文件都会报资源已存在, 资源中心不是按租户隔离的吗? 比如aaa用户所属租户aaa, aaa上传了文件aaa.sh, bbb用户所属租户bbb, bbb上传 aaa.sh 的时候报资源已存在。

根据文件名判断唯一,可以看看 t_ds_resource 表的唯一性约束,3.2.0 已经不会这样判了,我们不会保持元数据。

3.1.7版本配置任务组,当资源释放之后会存在排队中的任务一直不调度执行的情况(不知道是否有超时机制?测试过程中发现并不是所有排队中的任务都不能被调度,但是长时间排队的容易出现),而且观察到不能被调度的任务在t_ds_task_group表中的in_queue属性值为1。

已经提交了issue:https://github.com/apache/dolphin

scheduler/issues/14813 因为线上系统在使用这个功能,急盼解决!感谢!

issue已有回复:https://github.com/apache/dolphin

scheduler/issues/14813

版本3.1.7,对于工作流中已经运行的实例,不能进行其中某个任务的挂起(停止)/恢复操作,在任务实例列表页里面也不能对某个任务实例进行kill,请问这个是有这样的设计需求还是暂时不提供这样的功能呢?因为对于一个任务可能有问题,用户希望及时kill,同时不影响该作业在工作流中下游的任务节点继续调度 。

目前没有相关的议题,白鲸开源的商业版本种有类似方案。社区在与其沟通争取早日同步到社区。

3.1.7版本复制节点时,复制出来的节点很随意的在其他地方,很难找,2.0.5复制后会直接在被复制节点附近,这块会进行优化吗?

目前没有相关的issue,可以创建一个issue看看社区是否有人感兴趣。

3.1.7版本单机模式,能配置告警信息吗?

可以的,和集群是一样配置。

海豚有开放出来api,来触发指定节点的执行吗?

有一个前后端相互调用的api,在api server 启动后浏览 http://{API server ip}:12345/dolphinscheduler/swagger-ui/index.html?language=en_US&lang=en,在 

process definition 部分,里面有详细

参数说明,详见https://dolphinscheduler.

apache.org/en-us/docs/3.1.8/guide/api/open-api。

目前3.1.2版本不支任务批量暂停,批量启动,任务多了用起来比较头疼,是否在后续版本能支持?

3.1.x不会引入类似的功能了,只会做bugfix,3.2.0已经实现了类似的功能。

3.1.2版本遇到任务异常,导致积压8k+的任务都是提交成功状态,现在想做积压任务清理,如何操作?

建议等待运行成功,如果不想,页面直接点击按钮停止。

DolphinScheduler支持那些国产操作系统?

可以尝试一下,基本上都是支持的,如果不支持的可以通过Docker 来支持,我们提供Arm和AMD的架构Docker。

数据源配置impala数据源需要如何配置才能测试连通?

Impala 需要自己的 jdbc,所以可能需要自己实现一个datasouce, 或者可以尝试用 hive的,或者 hive cli task 看看是否可以连通。

不同任务类型之间调度,动态变量传输怎么实现的?如:shell 脚本能获取当前时间,传给一个SQl任务。

可以通过参数传递实现 https://dolphinscheduler.apache.org/

en-us/docs/3.1.8/guide/parameter/context

参与贡献


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


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


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


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


非新手问题列表:https://github.com/apache/dolphinscheduler/issues?q=is%3Aopen+is%3Aissue+label%3A%22volunteer+wanted%22


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


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


参与开源可以近距离与各路高手切磋,迅速提升自己的技能,如果您想参与贡献,我们有个贡献者种子孵化群,可以添加社区小助手微信(Leonard-ds) ,手把手教会您( 贡献者不分水平高低,有问必答,关键是有一颗愿意贡献的心 )。

添加社区小助手微信(Leonard-ds,好友申请注明“入交流群+姓名+公司+职位信+是否是用户”,群里是实名制,仅用于验证身份) 



如果想参与贡献,添加小助手微信时请说明想参与贡献。


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

< 🐬🐬 >
更多精彩推荐

Apache DolphinScheduler 支持使用 OceanBase 作为元数据库啦!

如何用 Apache DolphinScheduler 实现自动配置自定义变量?

又一轮优秀用户案例有奖征集,快来投稿!

☞去年办了这么多场Meetup都没有你,2023年赶紧安排起来!

3.2.0 终极预告!云原生支持新增 Spark on k8S 支持

3.2.0 版本预告!远程日志解决 Worker 故障获取不到日志的问题



点击阅读转发在看

文章转载自海豚调度,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论