Dataphin中重跑与强制重跑的区别

简介: 本文主要解析了Dataphin产品中重跑与强制重跑的区别及运行原理,推荐用户根据不同的场景选择适合的操作。

区别一:适用的实例对象范围不同


通常情况下,当实例运行完成后,会变为成功或失败状态。此时如果用户可能因为各种原因需要对实例进行重跑,就可以通过重跑按钮进行实例的重跑。重跑时,系统会按照最新发布的代码版本执行。Dataphin支持针对单个实例进行重跑、或选中一个起点及其下游,按照依赖关系进行批量重跑(如整条链路计算逻辑修改等场景),以实现全链路数据更新。


可能存在某些处于非成功或失败状态的实例,不满足重跑操作所要求条件(实例依赖的所有上游实例运行成功并到达当前实例的定时调度时间)的情况,此时就需要采用强制重跑操作。


如下图所示,重跑主要针对正常运行结束后状态为成功或失败的实例,而强制重跑可以无视实例的状态强制运行。

实例生命周期状态

重跑与强制重跑的区别.png

区别二:运行机制不同


场景一:任务A少读取了一部分数据,任务B因为缺少这部分数据运行失败了,对任务A的代码逻辑进行修复后,需要从A开始向下重跑。

如下图所示,A、B、C 三个任务,存在着依次依赖的关系,需要上一个任务成功运行完成后,才能开始运行下一个任务。此时 B 任务运行失败了,C 任务处于未运行状态。

重跑与强制重跑的区别 (1).png

重跑:当我们选择重跑节点时,仅可选择 A 和 B 任务, C 任务因为不满足重跑运行条件(上游所有任务成功完成),不能选择。我们可选择重跑 B 节点,当 B 点成功完成后,C 任务会因为满足运行条件(上游所有任务成功完成且到达调度时间)自动开始运行,而无需进行额外的设置。

强制重跑:我们也可以无视任务状态,对 B、C 选择强制重跑,此时系统会根据节点依赖关系,依次运行 B 和 C 节点。


通常情况下,我们重跑失败的节点即可,无需对下游节点进行额外操作。


场景二:任务 B 的代码存在问题导致写入分区的数据为空,因此当任务 C 读取表的时候运行失败了。此时用户对 B 节点的代码进行了改写,并重跑。在 B 节点运行过程中,发现了 A 节点的代码也存在问题,对 A 节点任务进行的修改。此时,用户选择重跑或强制重跑,运行结果会有极大不同。

重跑与强制重跑的区别 (2).png


重跑:此时由于 B 节点处于运行中,因此无法进行重跑。我们仅能对 A 和 C 节点进行重跑操作,且因为处于依赖链条中间的 B 节点并不参加此次的重跑,系统会将 A 和 C 节点当成两个独立的节点运行。因此,A 节点更新的数据并不会对 B 和 C 的任务生效。

强制重跑:可以无视任务状态,对 A、B、C 节点选择强制重跑,此时系统会强制终止掉运行中的 B 任务,将所有任务置为未运行状态,然后再根据节点的相互依赖关系依次运行。此时,A 节点更新的数据会对下游所有任务生效。


适用场景

通常情况下,当任务运行失败时,我们只要选择失败的任务进行重跑就可以了。下游处于未运行状态的节点会在上游节点运行成功后自动开始运行。

在某些特殊场景下,我们可以忽略上游实例的运行状态(一般是无数据依赖,仅调度依赖,或者对数据实效性要求不高的情况),使用强制重跑功能来恢复运行。另外,如果运行到链路中间的任务,忽然发现上游任务有数据错误的情况需要及时止损,可以采用强制重跑功能。此时,系统会先将所有选中的任务批量终止,再从最上游实例按照依赖关系依次向下运行,避免新老代码并存产生的数据错乱。

相关文章
|
资源调度 Kubernetes 调度
Dataphin功能Tips系列(46)-实时研发任务在session调试和运行 时资源分配上的区别
实时研发任务在session调试和运行 时资源分配上的区别
241 2
|
5月前
|
数据采集 SQL 数据可视化
Dataphin功能Tips系列(72)一键数据探查,打造高质量数据开发、分析流程
Dataphin数据探查功能助力高效识别数据质量问题,支持手动与自动两种探查模式。通过一键生成质量报告,快速检测空值、异常值、重复值等问题,全面掌握数据分布与健康状况,提升数据准备与分析准确性。
388 7
|
7月前
|
搜索推荐 数据管理
Dataphin功能Tips系列(70)自定义菜单:构建一站式数据管理平台
Dataphin通过自定义菜单功能,支持嵌入企业其他平台URL,实现统一的数据开发与管理平台,提升团队协作效率。
255 8
|
5月前
|
机器人 数据中心
Dataphin功能Tips系列(79)精准获知标准更新动态,协同治理更高效
Dataphin支持数据标准变更订阅,可实时通过站内信、邮箱或钉群机器人通知相关人员,确保业务及时响应。用户可通过标准列表、个人中心等入口批量订阅,变更消息包含状态、版本及跳转链接,便于快速查看与处理。
211 8
|
5月前
|
数据采集 监控 调度
Dataphin功能Tips系列(76)质量规则调度配置系列(3)-定时调度
Dataphin「定时调度」功能支持按需设定数据质量检测时间与频率,适用于定期检查数据质量问题的场景。提供手动配置和系统推荐两种方式,可自动执行规则并生成报告,帮助用户高效发现并处理问题。
212 9
|
5月前
|
数据采集 运维 调度
Dataphin功能Tips系列(75)质量规则调度配置系列(2)-固定任务触发调度
Dataphin“固定任务触发调度”支持在任务成功或运行前触发质量规则校验。适用于表数据来源任务固定的场景,通过绑定强规则可阻断下游任务,防止脏数据扩散,提升数据质量管控能力。
312 9
|
5月前
|
数据管理
Dataphin功能Tips系列(78)自定义属性助力资产精细化管理
Dataphin V5.3升级自定义属性功能,支持多选、超链接及引用系统属性,实现资产“归口部门”与组织架构同步、指标看板一键跳转等场景,提升资产配置灵活性与管理效率。
185 8
|
5月前
|
数据采集 调度
Dataphin功能Tips系列(74)质量规则调度配置系列(1)-数据更新触发调度
Dataphin通过“数据更新触发调度”功能,结合强规则校验,可在订单表数据更新时自动触发质量检查,异常时阻断下游任务,有效防止脏数据扩散,保障关键业务链路的数据准确性与稳定性。
228 8

热门文章

最新文章