Flink作业任务的9种状态简单介绍

news/2024/9/23 4:33:50/

​ 当创建一个Flink任务后,该任务可能会经历多种状态。目前Flink给任务共定义了9种状态,包括:CreatedRunningFinishedCancellingCanceledRestartingFailingFailedSuspended。下面这张图详细展示了一个Job可能会经历的所有状态。

在这里插入图片描述

  • 最简单的一种状态就是:作业启动时处于Created状态,任务启动后处于Running状态,当所有运行的task都进入了最终状态,任务会自动切换到Finished状态,这是一个正常job从启动到停止的正常流程,但再实际生产环境,可能也会出现其他一些情况。
  • 如果任务在启动后,因为网络原因或者其他原因导致job失败,那么任务首先会切换到Failing状态,这样做的目的主要是为了取消所有正在运行的tasks。当然,如果配置了失败重试次数,任务会自动尝试重启,如果重启成功,那么任务会从Restarting状态变更为Created继而再处于Running状态,如果重启失败且已无法恢复,那么任务会等所有tasks都进入到最终状态后变更为Failed状态。
  • 如果用户想取消一个刚创建的任务,那么任务会从Created状态变更为Cancelling状态,也可能从Running状态变更为Cancelling状态,处于Cancelling状态的任务,会取消掉所有正在运行的tasks,等所欲tasks都结束后,任务会进入Canceled状态。

​ Flink任务除了这几种任务状态外,还有Suspended这种特殊的状态。当任务状态为FinishedCanceledFailed 这3种状态时,任务会彻底结束,从资源管理器中终结,同时会自动清理掉任务的一些缓存数据。但Suspended是一个局部的终结状态,简单来讲就是任务只是被当前的jobManager终结了,但集群中的其他jobManager可以通过高可用的方式,获取到任务的信息并重启任务。因此一个处于Suspended 状态的作业不会被彻底清理掉。

​ 根据任务的不同状态,我们可以通过一些监控策略对任务的状态提前监控和预警,降低生产任务Down风险。


http://www.ppmy.cn/news/56299.html

相关文章

LinkedHashSet源码分析

LinkedHashSet的基本介绍 LinkedHashSet是HashSet的子类 LinkedHashSet底层是一个LinkedHashMap,底层维护了一个数组双向链表 LinkedHashSet 根据元素的hashCode值来决定元素的存储位置,同时使用链表维护元素的次序(图),这使得元素看起来是…

DBeaver 没有菜单项 生成SQL Generate SQL

文章目录 Intro问题的根本有无该菜单项取决于你的查询SQL是单表还是多表?单表查询的结果集的菜单多表关联查询的结果集的菜单 测试版本 Intro DBeaver 是一款很棒的多平台、支持多数据源的GUI数据库客户端。 有一个我经常使用的功能就是: 当我查询到一个…

eletron+react+antd+node开发桌面小程序并打包(electron-packager+electron-builder)

首先罗列一下项目中用到的技术: electron, react,antd, typescript, node,及打包命令:pkg,electron-packager,electron-builder及child_process实现多进程 需求:开发一个桌面应用,左…

【热门框架】Maven依赖传递,可选依赖以及排除依赖指的是什么?有什么意义?

Maven依赖传递是指当一个项目依赖另一个项目时,Maven会自动下载并构建这些依赖项,同时还会将这些依赖项所依赖的其他项一并下载并构建。这个过程会一直递归下去,直到所有依赖的项都被下载并构建完成。这个过程就称为依赖传递。 依赖传递可以…

java中设计模式

单例模式 什么是单例模式? 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象…

使用SOCK_DGRAM类型的socket实现的ping程序

SOCK_DGRAM类型的socket常用于UDP通信,本文将尝试把这种socket用于ICMP协议,并完成一个简单的ping程序。使用ping去测试某个主机是否可用可能是一件很平常的事,尽管ping非常普通,但是编写一个实现ping功能的程序却并不是那么简单,因为ping使用的ICMP协议并不是一个应用层协…

leetcode-018-四数之和

题目及测试 package pid018; /* 18. 四数之和 给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。 请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[d]] (若两个四元组元素一一对应,则认为两个…

【MySQL】数据的家——MySQL的数据目录

1. 数据库和文件系统的关系 InnoDB、MyISAM 等 存储引擎把表存储在磁盘上,操作系统使用文件系统来管理磁盘。所以,InnoDB、MyISAM 等 存储引擎都是把数据存储在文件系统上。 当读取数据时,存储引擎会从文件系统中把数据读出来返回给我们&am…