【技术实现步骤摘要】
一种基于flink on yarn的热重启方法及装置
[0001]本申请涉及大数据处理
,尤其涉及一种基于flink on yarn的热重启方法及装置。
技术介绍
[0002]flink作为大数据领域的数据处理引擎,支持在yarn、kubernetes等资源管理平台上进行调度与执行,尤其是在yarn的实时处理场景中,flink任务总是以per
‑
job单作业提交模式运行,这种情况下,每个任务都有独立的集群和资源,因此每启动一个per
‑
job任务都需要单独分配资源并启动一个flink集群。
[0003]而per
‑
job任务在修改部分参数或者逻辑的时候,需要将运行的任务取消后,提交新的任务,并基于flink的checkpoint机制,在上次取消的状态下进行恢复,以保证数据处理的准确性,但这会导致新任务提交和运行的耗时非常长,且无法做到资源的复用,在复杂场景下还会造成业务阻塞。
技术实现思路
[0004]本申请提供的一种基于flink on y ...
【技术保护点】
【技术特征摘要】
1.一种基于flink on yarn的热重启方法,其特征在于,应用于服务端,包括以下步骤:在监控组件中注册flink内置的jobSubmitHandler,并通过注册完成的监控组件将客户端发送的新任务提交请求转发给分发组件;在所述分发组件接收到所述新任务提交请求后,判断是否进行热重启,若是,则取消旧任务,并将所述旧任务的当前信息保存到所述新任务对应的jobgraph中;所述分发组件接收所述新任务提交请求,并判断是否进行热重启,若是,则取消旧任务,并将所述旧任务的当前信息保存到所述新任务对应的jobgraph中;修改任务管理器中所述旧任务对应slot的映射关系,并将所述jobgraph发送给映射关系修改完成后的slot进行运行。2.根据权利要求1所述的一种基于flink on yarn的热重启方法,其特征在于,所述判断是否进行热重启,包括:判断所述分发组件内部缓存的任务是否为空,若是,则为第一次提交任务,缓存所述新任务信息并执行任务提交逻辑,否则进行热重启。3.根据权利要求1所述的一种基于flink on yarn的热重启方法,其特征在于,所述取消旧任务,并将所述旧任务的当前信息保存到所述新任务对应的jobgraph中,包括:执行cancelWithSavepoint方法,根据所述cancelWithSavepoint方法取消旧任务并生成所述旧任务的savepoint信息;于所述旧任务成功取消时,将所述旧任务的savepoint信息保存到所述新任务对应的jobGraph的SavepointRestoreSettings字段属性中。4.根据权利要求1所述的一种基于flink on yarn的热重启方法,其特征在于,所述修改任务管理器中所述旧任务对应slot的映射关系,包括:调用任务管理器中的rpc请求,根据所述rpc请求将所述任务管理器中所述旧任务与其对应slot的映射关系修改为所述新任务与所述slot的映射关系。5.一种基于flink on yarn的热重启装置,其特征在于,应用于服务端,包括:转发模块,用于在监控组件中注册fli...
【专利技术属性】
技术研发人员:杨槐,陈吉平,徐进挺,
申请(专利权)人:杭州玳数科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。