[发明专利]一种基于airflow和yarn的任务调度方法、装置及介质有效
申请号: | 201910900859.0 | 申请日: | 2019-09-23 |
公开(公告)号: | CN110673939B | 公开(公告)日: | 2021-12-28 |
发明(设计)人: | 洪嘉凯;巫朝星;陈旺明;林智辉;郑旭 | 申请(专利权)人: | 汉纳森(厦门)数据股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 厦门福贝知识产权代理事务所(普通合伙) 35235 | 代理人: | 陈远洋 |
地址: | 361000 福建省厦门市厦*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 airflow yarn 任务 调度 方法 装置 介质 | ||
本发明提供了一种基于airflow和yarn的任务调度方法、装置及介质。本发明确定一组任务中任务之间的依赖关系、该项任务最早能执行的时间和每个任务必须结束的截止时间,并动态设置每个任务的允许运行的时间范围,并生成该任务的python文件,利用爬虫爬取该组任务的所有任务的运行情况,并生成资源叠加图和网络甘特图,基于资源叠加图和网络甘特图调整任务的执行顺序。本发明通过统计任务的执行时间和计算资源内存占用,结合关键路径分析法和系统计算资源的实际使用情况,使用资源叠加图和网络甘特图对任务的执行顺序进行自动优化,从而使得任务总的执行时间自动优化,降低忙时资源抢占,提高闲时资源利用率,并提出了任务移动的具体条件。
技术领域
本发明涉及计算机任务调度技术领域,特别是一种基于airflow和yarn的任务调度方法、装置及存储介质。
背景技术
当前,一组有依赖关系的大数据相关作业运行时,由于作业采用网络图的形式进行规划执行,作业间存在并行执行的情况,由于计算资源利用的波动较大,并行作业在高峰时发生资源抢占,导致整组任务的整体运行时间变长。
现有技术中,在任务调度时限制yarn任务运行的使用资源量,而没有考虑到峰谷的情况,单纯的限制资源使用量也不利于任务更快执行完。但是任务之间的资源抢占还是存在的,这会整组任务执行时间变长。
因此,现有技术中,存在如下缺陷:无法基于任务之间的依赖关系解决任务抢占的问题,或者解决了抢占问题后执行时长没有缩短或者变长,即执行效率更低了,即没有充分利用计算资源。
发明内容
本发明针对上述现有技术中的缺陷,提出了如下技术方案。
一种基于airflow和yarn的任务调度方法,该方法包括:
确定步骤,确定一组任务中的一项任务taski与其他任务之间的依赖关系Di、该项任务最早能执行的时间TZi和每个任务必须结束的截止时间TDi,并动态设置每个任务的允许运行的时间范围TPi,然后将taski、Di、TZi、TDi和TPi组成一条数据记录(taski、Di、TZi、TDi、TPi)存在数据库中,其中一组任务中包括N项任务,1≦i≦N;
Airflow配置生成步骤,根据数据库中存储的一组任务中的每一任务的数据记录(taski、Di、TZi、TDi、TPi)生成该任务的python文件,当所有任务都生成python文件后提交Airflow服务器进行任务的执行;
任务运行记录步骤,利用爬虫访问yarn的管理界面获取该组任务的所有任务的运行情况并存入数据库,所述运行情况包括每一项任务的占用资源情况和每一项任务的实际开始结束时间,并基于所述运行情况生成资源叠加图;
任务调整步骤,使用爬虫基于该组任务的组标识dag_id访问Airflow服务器获取该组任务中每一任务的实际运行时间、消耗内存与依赖关系,并基于每一任务的实际运行时间、消耗内存与依赖关系生成网络甘特图,基于所述资源叠加图和网络甘特图调整任务的执行顺序。
更进一步地,所述占用资源情况为占用内存或处理器情况。
更进一步地,所述资源叠加图的横坐标为时间,纵坐标为各个时间点对应的所有任务占用的资源的和,所述网络甘特图中的每个矩形表示一项任务,矩形的长度为该任务的运行时间,开始结束时间与时间轴上的时间相对应,矩形框高度表示该任务所消耗的资源量。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于汉纳森(厦门)数据股份有限公司,未经汉纳森(厦门)数据股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910900859.0/2.html,转载请声明来源钻瓜专利网。