首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

通过sql-client.sh提交flink作业,有时不使用任何检查点(更改检查点的方法是什么),或者在出现故障时如何恢复

通过sql-client.sh提交flink作业,可以选择是否使用检查点来保证作业的容错性和故障恢复能力。如果不使用任何检查点,可以通过更改检查点的方法来启用检查点功能。

要更改检查点的方法,可以按照以下步骤操作:

  1. 打开Flink的配置文件flink-conf.yaml,该文件位于Flink安装目录的conf文件夹下。
  2. 在配置文件中找到以下配置项,并进行相应的修改:
  3. 在配置文件中找到以下配置项,并进行相应的修改:
  4. 修改完配置文件后,保存并关闭文件。
  5. 重新启动Flink集群和作业管理器,使配置生效。

在出现故障时,可以通过以下步骤来恢复作业:

  1. 检查作业管理器和任务管理器的状态,确保它们正常运行。
  2. 检查作业的日志,查找可能的错误信息和异常栈轨迹。
  3. 如果作业使用了检查点功能,可以通过检查点来进行故障恢复。首先找到最近的一个成功的检查点,然后将作业恢复到该检查点的状态。可以使用Flink的命令行工具或Web界面来管理和恢复检查点。
  4. 如果没有使用检查点或检查点无法恢复作业的状态,可以尝试重新提交作业或修复代码中的错误,并重新启动作业。

总结: 通过sql-client.sh提交flink作业时,可以选择是否使用检查点来保证作业的容错性和故障恢复能力。如果不使用检查点,可以通过更改检查点的配置来启用检查点功能。在出现故障时,可以通过检查点来进行故障恢复,或者重新提交作业或修复代码中的错误来恢复作业的运行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Flink 使用Flink进行高吞吐,低延迟和Exactly-Once语义流处理

在本文中,我们将深入探讨Flink新颖的检查点机制是如何工作的,以及它是如何取代旧架构以实现流容错和恢复。...我们将从以下几个维度讨论不同方法的优缺点,最终选出融合不同方法优点适合流处理程序的融合方法: Exactly-once语义保证:故障后有状态算子的状态能正确恢复。 低延迟:延迟越低越好。...故障恢复意味着只需恢复最新的检查点状态,并从最新记录的 ‘barrier’ 对应的偏移量重放数据源。分布式快照在我们在本文开头所要达到的所有需求中得分很高。...Flink实现了每个核每秒150万个元素的连续吞吐量。这样集群的总吞吐量达到每秒1.82亿个元素。测试得到的Flink延迟为零,因为作业不涉及网络,也不涉及微批处理。...这是什么意思?Flink算子在将记录发送到下一个算子之前会暂存储在缓冲区中。通过指定缓冲区超时时间,例如10毫秒,我们可以告诉Flink在缓冲区满了时或者到达10毫秒时发送缓冲区数据。

5.9K31

Flink实战(八) - Streaming Connectors 编程

要使用此反序列化模式,必须添加以下附加依赖项: 当遇到因任何原因无法反序列化的损坏消息时,有两个选项 - 从deserialize(...)方法中抛出异常将导致作业失败并重新启动,或者返回null以允许...请注意,当作业从故障中自动恢复或使用保存点手动恢复时,这些起始位置配置方法不会影响起始位置。在恢复时,每个Kafka分区的起始位置由存储在保存点或检查点中的偏移量确定。...启用此函数后,Flink的检查点将在检查点成功之前等待检查点时的任何动态记录被Kafka确认。这可确保检查点之前的所有记录都已写入Kafka。...注意事项 Semantic.EXACTLY_ONCE 模式依赖于在从所述检查点恢复之后提交在获取检查点之前启动的事务的能力。...如果作业失败,Flink会将流式程序恢复到最新检查点的状态,并从存储在检查点中的偏移量开始重新使用来自Kafka的记录。 因此,绘制检查点的间隔定义了程序在发生故障时最多可以返回多少。

2K20
  • Flink实战(八) - Streaming Connectors 编程

    要使用此反序列化模式,必须添加以下附加依赖项: 当遇到因任何原因无法反序列化的损坏消息时,有两个选项 - 从deserialize(...)方法中抛出异常将导致作业失败并重新启动,或者返回null以允许...请注意,当作业从故障中自动恢复或使用保存点手动恢复时,这些起始位置配置方法不会影响起始位置。在恢复时,每个Kafka分区的起始位置由存储在保存点或检查点中的偏移量确定。...启用此函数后,Flink的检查点将在检查点成功之前等待检查点时的任何动态记录被Kafka确认。这可确保检查点之前的所有记录都已写入Kafka。...注意事项 Semantic.EXACTLY_ONCE 模式依赖于在从所述检查点恢复之后提交在获取检查点之前启动的事务的能力。...如果作业失败,Flink会将流式程序恢复到最新检查点的状态,并从存储在检查点中的偏移量开始重新使用来自Kafka的记录。 因此,绘制检查点的间隔定义了程序在发生故障时最多可以返回多少。

    2.9K40

    Flink1.13架构全集| 一文带你由浅入深精通Flink方方面面(二)

    在Flink这样的分布式系统中,我们不仅需要定义出状态在任务并行时的处理方式,还需要考虑如何持久化保存、以便发生故障时正确地恢复。这就需要一套完整的管理机制来处理所有的状态。...如果出现故障,我们恢复到之前保存的状态,故障时正在处理的所有数据都需要重新处理;所以我们只需要让源(source)任务向数据源重新提交偏移量、请求重放数据就可以了。...我们知道,对于Flink内部来说,检查点机制可以保证故障恢复后数据不丢(在能够重放的前提下),并且只处理一次,所以已经可以做到exactly-once的一致性语义了。...在Flink的Source任务中将数据读取的偏移量保存为状态,这样就可以在故障恢复时从检查点中读取出来,对数据源重置偏移量,重新获取数据。...如果中间出现故障,事务进行回滚,预提交就会被放弃;恢复状态之后,也只能恢复所有已经确认提交的操作。 2.

    1.6K30

    Flink实战(八) - Streaming Connectors 编程

    要使用此反序列化模式,必须添加以下附加依赖项: 当遇到因任何原因无法反序列化的损坏消息时,有两个选项 - 从deserialize(…)方法中抛出异常将导致作业失败并重新启动,或者返回null以允许Flink...请注意,当作业从故障中自动恢复或使用保存点手动恢复时,这些起始位置配置方法不会影响起始位置。在恢复时,每个Kafka分区的起始位置由存储在保存点或检查点中的偏移量确定。...启用此函数后,Flink的检查点将在检查点成功之前等待检查点时的任何动态记录被Kafka确认。这可确保检查点之前的所有记录都已写入Kafka。...注意事项 Semantic.EXACTLY_ONCE 模式依赖于在从所述检查点恢复之后提交在获取检查点之前启动的事务的能力。...如果作业失败,Flink会将流式程序恢复到最新检查点的状态,并从存储在检查点中的偏移量开始重新使用来自Kafka的记录。 因此,绘制检查点的间隔定义了程序在发生故障时最多可以返回多少。

    2K20

    Flink大状态与Checkpint调优

    最后一部分解释了一些关于规划要使用多少资源的最佳实践。 监控检查点行为的最简单方法是通过 UI 的检查点部分。 检查点监控的文档显示了如何访问可用的检查点指标。...Flink 作业应该使用多少资源才能可靠运行。...方法 任务本地状态恢复正是针对这个恢复时间长的问题,其主要思想是:对于每个检查点,每个任务不仅将任务状态写入分布式存储,而且在一个备份中保存一份状态快照的副本。...如果在从副本恢复过程中出现任何问题,Flink 会透明地重试从主副本恢复任务。仅当主副本和(可选)辅助副本失败时,恢复才会失败。在这种情况下,根据配置,Flink 仍可能回退到旧的检查点。...任务本地副本可能仅包含完整任务状态的一部分(例如,写入一个本地文件时出现异常)。 在这种情况下,Flink 会首先尝试在本地恢复本地部分,非本地状态从主副本恢复。

    1.3K32

    Flink重点难点:状态(Checkpoint和Savepoint)容错与两阶段提交

    Flink 提供了 StateDesciptor 方法专门用来访问不同的 state,类图如下: 下面演示一下如何使用 StateDesciptor 和 ValueState,代码如下: public...当发生了故障后,Flink会将所有任务的状态恢复至最后一次Checkpoint中的状态,并从那里重新开始执行。 那么Checkpoints的生成策略是什么样的呢?它会在什么时候进行快照的生成呢?...由于出现问题,为了防止从头开始重复计算,此时会通过Checkpoints来进行快照的恢复。...从检查点恢复后,它的内部状态会和生成检查点的时候完全一致,并且会紧接着重新处理那些从之前检查点完成开始,到发生系统故障之间已经处理过的数据。...为了解决这个问题,对于某些存储系统,Flink提供的Sink函数支持精确一次输出(在检查点完成后才会把写出的记录正式提交)。另一种方法则是适用于大多数存储系统的幂等更新。

    2.3K21

    【极数系列】Flink是什么?(02)

    提交或控制应用程序的所有通信都是通过REST调用进行的。这简化了Flink在许多环境中的集成。 3.以任何规模运行应用程序 Flink旨在以任何规模运行有状态流应用程序。...因此,任务通过访问本地(通常在内存中)状态来执行所有计算,从而产生非常低的处理延迟。Flink通过定期异步地将本地状态检查点指向持久存储,在出现故障时保证了一次状态的一致性。 三....反观事件驱动型应用,由于只需考虑自身数据,因此在更改数据表示或服务扩容时所需的协调工作将大大减少。 (3)如何支持 a....检查点的一致性: Flink的故障恢复机制是通过建立分布式应用服务状态一致性检查点实现的,当有故障产生时,应用服务会重启后,再重新加载上一次成功备份的状态检查点信息。...方便集群服务移植: 通过使用 Savepoint,流服务应用可以自由的在不同集群中迁移部署。 方便Flink版本升级: 通过使用 Savepoint,可以使应用服务在升级Flink时,更加安全便捷。

    13610

    全网最全系列 | Flink原理+知识点总结(4万字、41知识点,66张图)

    它与常规列表状态的区别在于,在发生故障时,或者 从保存点(savepoint)启动应用程序时如何恢复。一种是均匀分配,另外一种是将所有 State 合并为全量 State 再分发给每个实例。...14、Flink 状态如何持久化? 首选,Flink的状态最终都要持久化到第三方存储中,确保集群故障或者作业挂掉后能够恢复。...状态后端必须是高可用的,否则我们的状态后端经常出现故障,会导致无法通过checkpoint来恢复我们的应用程序)。...1000 21、当作业失败后,检查点如何恢复作业?...JobManager JM负责决定应用何时调度task,在task执行结束或失败时如何处理,协调检查点、故障恢复。

    4.8K44

    Flink重点难点:状态(Checkpoint和Savepoint)容错与两阶段提交

    Flink 提供了 StateDesciptor 方法专门用来访问不同的 state,类图如下: 下面演示一下如何使用 StateDesciptor 和 ValueState,代码如下: public...当发生了故障后,Flink会将所有任务的状态恢复至最后一次Checkpoint中的状态,并从那里重新开始执行。 那么Checkpoints的生成策略是什么样的呢?它会在什么时候进行快照的生成呢?...由于出现问题,为了防止从头开始重复计算,此时会通过Checkpoints来进行快照的恢复。...从检查点恢复后,它的内部状态会和生成检查点的时候完全一致,并且会紧接着重新处理那些从之前检查点完成开始,到发生系统故障之间已经处理过的数据。...为了解决这个问题,对于某些存储系统,Flink提供的Sink函数支持精确一次输出(在检查点完成后才会把写出的记录正式提交)。另一种方法则是适用于大多数存储系统的幂等更新。

    86630

    Flink如何实现端到端的Exactly-Once处理语义

    将检查点数据写入持久存储是异步发生的,这意味着 Flink 应用程序在写检查点过程中可以继续处理数据。 如果发生机器或软件故障重新启动后,Flink 应用程序从最近成功完成的检查点恢复。...在处理开始之前,Flink 从检查点恢复应用程序状态并回滚到输入流中的正确位置。这意味着 Flink 的计算结果就好像从未发生过故障一样。...提交捆绑了两个检查点之间的所有写入数据。这可确保在发生故障时能回滚所有写入的数据。...当一个进程只有内部状态时,除了写入到已定义的状态变量之外,不需要在预提交阶段执行任何其他操作。Flink 负责在检查点成功的情况下正确提交这些写入,或者在出现故障时中止这些写入。 ?...我们知道,如果发生故障时,Flink 会将应用程序的状态恢复到最新的成功检查点。有一种极端情况,在成功预提交之后但在提交通知到算子之前发生故障。

    3.3K10

    Flink Kafka Connector

    当作业从故障中自动恢复或使用保存点手动恢复时,这些起始位置配置方法不会影响起始位置。在恢复时,每个 Kafka 分区的起始位置由存储在保存点或检查点中的偏移量确定。...如果作业失败,Flink 会从最新检查点的状态恢复流处理程序,并从保存在检查点中的偏移量重新开始消费来自 Kafka 的记录。 因此,检查点间隔定义了程序在发生故障时最多可以回退多少。...当使用 Flink 1.3.x 之前的版本,消费者从保存点恢复时,无法在恢复的运行启用分区发现。如果要启用,恢复将失败并抛出异常。...有不同的方式配置偏移量提交,具体取决于作业是否启用了检查点: 禁用检查点:如果禁用了检查点,那么 Flink Kafka Consumer 依赖于 Kafka 客户端的定期自动提交偏移量的功能。...启用检查点:如果启用检查点,那么 Flink Kafka Consumer 会在检查点完成时提交偏移量存储在检查点状态中。

    4.8K30

    超越Storm,SparkStreaming——Flink如何实现有状态的计算

    当 map 算子处理完前 3 条记录 并收到检查点屏障时,它们会将状态以异步的方式写入稳定存储. 当没有出现故障时,Flink 检查点的开销极小,检查点操作的速度由稳定存储的可用带宽决定。...Flink 将输入流倒回到上一个检查点屏障的位置,同时恢复 map 算子的状态值。然后,Flink 从此处开始重新处理。这样做保证了在记录被处理之后,map 算子的状 态值与没有发生故障时的一致....保存点 状态版本控制 检查点由 Flink 自动生成,用来在故障发生时重新处理记录,从而修正状 态。...保存点与检查点的工作方式完全相同,只不过它由用户通过 Flink 命令行工 具或者 Web 控制台手动触发,而不由 Flink 自动触发,用户可以从保存点重启作业,而不用从头开始。...(1) 第一种方法是在 sink 环节缓冲所有输出,并在 sink 收到检查点记录时, 将输出“原子提交”到存储系统。这种方法保证输出存储系统中只存在 有一致性保障的结果,并且不会出现重复的数据。

    75720

    4个步骤让Flink应用程序达到生产状态

    这是分发的最小原子单元,因此也会影响 Flink 应用程序的可伸缩性。作业的每个算子的 key group 个数只能设置一次,可以手动配置或者直接使用默认配置。...可以通过 setMaxParallelism(int maxParallelism) 手动地为每个作业或算子设置最大并发度。 上线的任何作业都应该指定最大并发度。但是,一定要仔细考虑这个值的大小。...因为一旦设置了最大并发度,就无法在以后更新。一个作业想要改变最大并发度,就只能从全新的状态重新开始。目前还无法在更改最大并发度后,从上一个成功的检查点或保存点恢复。...Flink文档提供了有关使用检查点如何配置使用大状态的应用程序的其他信息和指导。 2....配置 Job Manager 的高可用性(HA) 高可用性(HA)配置确保了 Flink 应用程序 JobManager 组件在出现潜在故障时可以自动恢复,从而将停机时间降至最低。

    1.7K20

    超越Storm,SparkStreaming——Flink如何实现有状态的计算

    当 map 算子处理完前 3 条记录 并收到检查点屏障时,它们会将状态以异步的方式写入稳定存储. ? 当没有出现故障时,Flink 检查点的开销极小,检查点操作的速度由稳定存储的可用带宽决定。...Flink 将输入流倒回到上一个检查点屏障的位置,同时恢复 map 算子的状态值。 然后,Flink 从此处开始重新处理。这样做保证了在记录被处理之后,map 算子的状 态值与没有发生故障时的一致....保存点 状态版本控制 检查点由 Flink 自动生成,用来在故障发生时重新处理记录,从而修正状 态。...保存点与检查点的工作方式完全相同,只不过它由用户通过 Flink 命令行工 具或者 Web 控制台手动触发,而不由 Flink 自动触发,用户可以从保存点重启作业,而不用从头开始。...(1) 第一种方法是在 sink 环节缓冲所有输出,并在 sink 收到检查点记录时, 将输出“原子提交”到存储系统。这种方法保证输出存储系统中只存在 有一致性保障的结果,并且不会出现重复的数据。

    87330

    Flink可靠性的基石-checkpoint机制详细解析

    Checkpoint介绍 checkpoint机制是Flink可靠性的基石,可以保证Flink集群在某个算子因为某些原因(如 异常退出)出现故障时,能够将整个应用流图的状态恢复到故障之前的某一状态,保...4) 当由于某些原因出现故障时,CheckpointCoordinator通知流图上所有算子统一恢复到某个周期的checkpoint状态,然后恢复数据流处理。...在分布式情况下,不推荐使用本地文件。如果某 个算子在节点A上失败,在节点B上恢复,使用本地文件时,在B上无法读取节点 A上的数据,导致状态恢复失败。...(ExternalizedCheckpointCleanup.RETAIN_ON_CANCELLATION) 默认情况下,检查点不被保留,仅用于在故障中恢复作业,可以启用外部持久化检查点,同时指定保留策略...集群可以通过默认的重启策略来重启,这个默认的重启策略通常在未指定重启策略的情况下使用,而如果Job提交的时候指定了重启策略,这个重启策略就会覆盖掉集群的默认重启策略。

    5.3K00

    Flink实战(10)-checkpoint容错保证

    0 前言程序在 Flink 集群运行,某个算子因为某些原因出现故障,如何处理在故障恢复后,如何保证数据状态,和故障发生之前的数据状态一致?1 什么是 checkpoint(检查点)?...第2步当 Sink 算子已经收到所有上游的 Checkpoint Barrie 时,进行以下 2 步操作:保存自己的数据状态并直接通知检查点协调器检查点协调器在收集所有的 task 通知后,就认为这次的...DeliveryGuarantee.EXACTLY_ONCE: 该模式下,Kafka sink 会将所有数据通过在 checkpoint 时提交的事务写入。...因此,如果 consumer 只读取已提交的数据(参见 Kafka consumer 配置 isolation.level),在 Flink 发生重启时不会发生数据重复。...9 Data Source 和 Sink 的容错保证当程序出现错误的时候,Flink 的容错机制能恢复并继续运行程序。这种错误包括机器硬件故障、网络故障、瞬态程序故障等。

    14300

    Flink 内核原理与实现-入门

    2、应用级容错 Flink使用轻量级分布式快照机制,设计了检查点(CheckPoint)来实现可靠的容错。 一致性 Flink的恢复机基于应用程序状态的一致性检查点。...Flink利用检查点特性,在框架层面提供了Exactly-Once的支持,内置了支持Exactly-Once语义的Sink,即使出现故障,也能保证数据只写出一次。...内存管理、数据序列化:通过序列化,使用二进制方式在内存中存储数据,避免JVM的垃圾回收带来的停顿问题。 数据交换:数据在计算任务之间的本地、跨网络传递。...Flink客户端:是Flink提供的CLI命令行工具,用来提交Flink作业到Flink集群,在客户端中负责Stream Graph(流图)和Job Graph(作业图)的构建。...接下来Flink应用篇,如果对Flink感兴趣或者正在使用的小伙伴,可以加我入群一起探讨学习。 参考书籍《Flink 内核原理与实现》

    58910

    Flink可靠性的基石-checkpoint机制详细解析

    Checkpoint介绍 checkpoint机制是Flink可靠性的基石,可以保证Flink集群在某个算子因为某些原因(如 异常退出)出现故障时,能够将整个应用流图的状态恢复到故障之前的某一状态,保...4) 当由于某些原因出现故障时,CheckpointCoordinator通知流图上所有算子统一恢复到某个周期的checkpoint状态,然后恢复数据流处理。...在分布式情况下,不推荐使用本地文件。如果某 个算子在节点A上失败,在节点B上恢复,使用本地文件时,在B上无法读取节点 A上的数据,导致状态恢复失败。...(ExternalizedCheckpointCleanup.RETAIN_ON_CANCELLATION) 默认情况下,检查点不被保留,仅用于在故障中恢复作业,可以启用外部持久化检查点,同时指定保留策略...集群可以通过默认的重启策略来重启,这个默认的重启策略通常在未指定重启策略的情况下使用,而如果Job提交的时候指定了重启策略,这个重启策略就会覆盖掉集群的默认重启策略。

    3.2K40

    Flink DataStream—— 状态(State)&检查点(Checkpoint)&保存点(Savepoint)原理

    需要保证数据不丢不重,恰好计算一次,尤其是当状态数据非常大或者应用出现故障需要恢复时,要保证状态不出任何错误。 一般流处理任务都是7*24小时运行的,程序的可靠性非常高。...假如我们使用一个持久化的备份系统,不断将内存中的状态备份起来,当流处理作业出现故障时,需要考虑如何从备份中恢复。而且,大数据应用一般是横向分布在多个节点上,流处理框架需要保证横向的伸缩扩展性。...Raw State只支持字节,任何上层数据结构需要序列化为字节数组。使用时,需要用户自己序列化,以非常底层的字节数组形式存储,Flink并不知道存储的是什么样的数据结构。...检查点 ​ 在上面介绍了Flink的算子都是基于本地的,而Flink又是一个部署在多节点的分布式系统,分布式系统经常出现进程被杀、节点宕机或网络中断等问题,那么本地的状态在遇到故障时如何保证不丢呢?...因此,这种方式能够享受本地内存的快速读写访问,也能保证大容量状态作业的故障恢复能力。 RocksDBStateBackend 这种方式下,本地状态存储在本地的RocksDB上。

    4.3K41
    领券