Dataphin小时调度依赖关系及运行说明

本文涉及的产品
智能数据建设与治理Dataphin,200数据处理单元
简介: 介绍天任务依赖小时任务、小时任务依赖小时任务的依赖关系及运行条件

注意: 以下规则适用于Dataphin v3.11及之前版本,v3.12的调度依赖规则请见 Dataphin依赖周期和依赖策略详解


一、实例开始运行条件说明

  • 依赖的上游实例全部运行成功 -- 满足此条件,即变成“等待中”状态(可能在等待到达定时运行时间或者等待分配调度资源,后续版本拆分了“等待调度时间”和“等待调度资源”)
  • 到达当前实例的定时运行时间且已分配调度资源 -- 满足此条件,即变成“运行中”状态(但是如果因为没有足够的运行资源导致的运行无法进行,dataphin侧无法感知,需要通过在计算引擎侧查询)

二、调度依赖关系说明

case1:天任务依赖小时任务

【场景】:

  • 上游小时任务非自依赖(即小时任务本身未配置依赖上周期),彼此独立:

    - 每个小时跑全量数据:一般是维表场景,此时只要依赖最近一个调度周期的实例即可;但是维表一般变化较缓慢,较少设置为小时粒度的全量更新(当前不支持该种调度依赖策略)

    - 每个小时跑增量数据,但是周期间无依赖关系:一般是日志表,此时需要依赖上游全部实例(当前实现逻辑)

  • 上游小时任务自依赖(即小时任务本身配置了依赖上周期),即下一个小时依赖上一个小时的数据:

    - 每个小时跑全量数据:比如全量数据写入drds,为了防止重复写入,会设置依赖上周期

- 每个小时跑增量数据,但是周期间有依赖关系:比如merge,每个小时都要将前一个小时的数据merge到结果表;此时仅依赖最近一个调度周期的实例,具体需要依赖哪个周期,通过起调时间控制

【实现逻辑】:

1. 下游天任务和上游小时任务是同周期依赖:

  • 上游小时任务如果如果是自依赖(即小时任务本身配置了依赖上周期), 则会根据定时运行时间挂最近一个周期的上游小时任务
  • 依赖上游定时运行时间>=自己定时运行时间最近一个实例
  • 例:上游小时任务固定整点调度,下游天实例定时每日5点0分起调,则天实例会依赖上游5点0分的小时实例;如果下游天实例定时每日5点01分起调,则天实例会依赖上游6点0分的小时实例)

  • 上游小时任务如果不是自依赖(即小时任务本身没有配置依赖上周期), 则会依赖上游所有的小时实例

2. 下游天任务和上游小时任务是跨周期依赖(即下游天任务依赖上游小时任务的上周期):

  • 上游小时任务如果是自依赖, 则会依赖上游前一天最后一个小时实例

  • 上游小时任务如果不是自依赖,  则会依赖上游前一天所有的小时实例


case2:小时任务依赖小时任务

  • 依赖上游定时运行时间>=自己定时运行时间最近一个实例(考虑到每个小时实例跑的是前面小时的数据,从数据依赖合理性考虑)
  • 例1
  • 上游小时任务和下游小时任务同周期依赖,且都是每个整点起调,则下游1点的实例依赖上游1点的实例,下游2点的实例依赖上游2点的实例,依次类推

  • 如果需要实现下游2点的实例依赖上游1点的实例,可以通过配置下游任务依赖上游任务的上周期实现(默认子任务2点的实例依赖父任务2点的实例,设置为依赖上周期之后,即依赖父任务2点实例的上周期,也就是1点实例,以实现子任务2点的实例依赖父任务1点的实例的场景)

  • 例2:同周期依赖,上游小时任务是每个整点起调,下游小时任务是每小时的05分开始起调,则下游0点05分的实例依赖上游1点的实例,下游1点点15分的实例依赖上游2点的实例,依次类推

  • 例3:不同批次调度,同周期依赖,上游小时任务是每隔4个小时整点起调,下游小时任务是每个小时的15分开始起调,则下游0点15分、1点15分、2点15分、3点15分的实例,都依赖上游4点的实例,依次类推

相关文章
|
6月前
|
调度
Dataphin功能Tips系列(6)-月调度周期任务补数据的业务日期选择
一个销售额结算的周期任务的调度周期是月调度---每月1号进行调度,但是有一天调整了计算口径后希望重新计算过去几个月的销售额,此时补数据任务的业务日期应该如何选择?
158 4
Dataphin功能Tips系列(6)-月调度周期任务补数据的业务日期选择
|
6月前
|
SQL 安全 数据建模
Dataphin常见问题之计算任务没有按调度执行如何解决
Dataphin是阿里云提供的一站式数据处理服务,旨在帮助企业构建一体化的智能数据处理平台。Dataphin整合了数据建模、数据处理、数据开发、数据服务等多个功能,支持企业更高效地进行数据治理和分析。
|
6月前
|
存储 Oracle 关系型数据库
Dataphin常见问题之想要周期执行任务如何解决
Dataphin是阿里云提供的一站式数据处理服务,旨在帮助企业构建一体化的智能数据处理平台。Dataphin整合了数据建模、数据处理、数据开发、数据服务等多个功能,支持企业更高效地进行数据治理和分析。
|
6月前
|
数据采集 运维 Java
有了 Dataphin v4.0,跨系统调度依赖再也不是难题
Dataphin v4.0引入了新的触发式节点,用于解决多数据平台间的调度问题。当上游系统(如Unix的crontab)完成数据采集后,可通过触发式节点通知Dataphin开始拉取数据,避免传统轮询方式的效率低和资源占用。触发式节点需满足Dataphin OpenAPI开通和网络连通条件,并通过SDK进行外部触发。示例展示了如何创建和使用触发式节点,以及使用Java SDK模拟触发请求。
310 0
|
6月前
|
SQL JSON 数据库连接
Dataphin常见问题之报415错误如何解决
Dataphin是阿里云提供的一站式数据处理服务,旨在帮助企业构建一体化的智能数据处理平台。Dataphin整合了数据建模、数据处理、数据开发、数据服务等多个功能,支持企业更高效地进行数据治理和分析。
|
4月前
|
运维 关系型数据库 调度
想一套Dataphin管理云上云下的集群和数据?“注册调度集群”来帮忙!
在实际业务场景中,部分企业在云上和云下(本地机房)都存在集群和数据库,企业期望通过一套Dataphin同时对这些集群和数据库进行管理,如何有效解决数据跨网络传输带来的安全性低和流量成本高的问题是其中的关键。为了解决上述问题,Dataphin推出“注册调度集群”功能,帮助企业实现一套Dataphin管理云上云下的集群和数据。
|
6月前
|
调度 SQL
|
6月前
|
SQL 存储 数据可视化
Dataphin常见问题之30G的内存都不够用如何解决
Dataphin是阿里云提供的一站式数据处理服务,旨在帮助企业构建一体化的智能数据处理平台。Dataphin整合了数据建模、数据处理、数据开发、数据服务等多个功能,支持企业更高效地进行数据治理和分析。
|
6月前
Dataphin中运行任务所需的资源不仅包括CPU,还有内存
【1月更文挑战第11天】【1月更文挑战第53篇】Dataphin中运行任务所需的资源不仅包括CPU,还有内存
77 2
|
调度
在Dataphin中配置了一个日调度的表
在Dataphin中配置了一个日调度的表
57 2

热门文章

最新文章

相关产品

  • 智能数据建设与治理 Dataphin