一种分布式流程图异构计算调度方法技术

技术编号:22218316 阅读:49 留言:0更新日期:2019-09-30 00:59
本发明专利技术涉及计算机技术领域,是为了解决当前分布式集群作业处理流程中面临的异构算法执行调度、异构算法间数据无缝流转、并行任务细粒度划分、流式数据动态处理等问题,提出的一种分布式流程图异构计算调度方法,包括自定义计算流程图配置,中心化调度管理计算流程,对异构算法进行混合调度,对流程图内计算程序的输入、输出数据进行管理并形成流式数据处理机制,同时提供多语言的异构算法接入SDK,配置执行预处理算法程序处理异构算法间数据无缝流转问题,配置执行预处理算法程序对并行任务进行细粒度划分等,构成了一套分布式集群作业模式下对异构算法计算流程调度执行管理的完备解决方案。

A Distributed Flow Chart Heterogeneous Computing Scheduling Method

【技术实现步骤摘要】
一种分布式流程图异构计算调度方法
本专利技术涉及计算机
,尤其涉及一种分布式流程图异构计算调度处理方法,具体来说是一种大数据异构算法处理流程的调度管理方法。
技术介绍
近年来随着数据采集来源的多样化,各行业对于大数据处理的需求日益明显,包括空间数据生产领域的数据生产基本都需要经过多个工序,采用多种软件算法进行流程化的数据加工,针对数据生产数据量大,处理流程复杂,处理工具多样化的特点,需要采用流程化的集群计算模式来提高整体数据生产效率,而集群计算的实用性和可行性主要体现在对流程计算的调度方面,目前现有的计算调度框架存在以下不足:1.仅基于流程图提供逻辑控制调度支持,调度粒度仅限于流程图单元节点,并不能对流程图单元节点进行更细粒度的执行划分,而在实际数据处理过程中往往需要对单一流程图单元进行并行处理,且需对每个并行任务进行动态控制。2.调度流程是当前流程单元运行结束再执行下一个或多个相关的流程单元,无法支持动态的流式任务调度。3.在实际数据生产的流程中使用到的工具算法有运行于异构环境中的自动化程序、单机类人机交互、C/S模式的协作类工具算法,而目前的调度框架对算法有严格要求,只能是运行在Linux、PC、虚拟机其中的某个单一环境程序,无法做到对整个流程或者单一流程单元内的不同类型工具算法进行混合调度。4.框架本身并没有对算法间数据流转提供支持,基于所述调度框架开发的集群计算系统只能满足单一特定的流程应用场景,无法实现系统处理场景能力的动态扩展,算法开发人员不仅需要学习相关框架的开发技术,对算法进行改造接入,还需要对数据转换以及整个数据流进行管理,加大了算法开发人员进行集群计算处理开发的技术门槛。综上所述,目前还没有一套完整、普适性的分布式流程图调度计算方法来满足实际数据生产中复杂、多元的应用场景。
技术实现思路
为了解决上述问题,本专利技术提供了一种分布式流程图异构计算调度方法及框架,其目的在于,提供一套分布式流程图异构计算调度框架及系统,来解决现有技术中流程调度控制粒度细化程度不高、不能进行流式任务数据处理、不能对异构算法混合调度以及异构算法间数据无法无缝自动化流转的问题。为实现上述目的,本专利技术提供的一种分布式流程图异构计算方法是这样实现的:如图1所示,是根据本专利技术所涉及的系统架构图,分布式流程图异构计算主要包括流程图计算配置模块101、任务调度微服务102、PC集群资源管理服务103、Hadoop任务执行守护进程104、PC任务执行守护进程105、第三方算法接入SDK106等六个部分构成,其中分布式流程图异构计算规划及执行调度的具体提供方法如下:通过流程图计算配置模块进行工程创建以满足多租户要求,根据实际数据处理流程基于所述工程创建流程图。如图2所示,是根据本专利技术所涉及的分布式异构流程图配置结构图,所述流程图的流程单元201间可以配置强依赖关系202(实线箭头)和弱依赖关系203(虚线箭头),所述强依赖关系202体现在只有与目标流程单元204相关联的流程单元203执行完成才能执行目标流程单元204,所述弱依赖关系201体现在只要与目标流程单元205关联的流程单元201开始执行就可以执行目标流程单元205,所述流程单元可自定义配置一个处理计算因子207和多个预处理计算因子206、后处理计算因子208,所述预处理计算因子和所述后处理计算因子只能配置一个工具算法,所述处理计算因子可以配置多个工具算法,所述计算因子间可配置强209、弱210依赖关联关系,所述强依赖关系210体现在只有目标计算因子207的上一个计算因子211完成才能执行目标计算因子207,所述弱依赖关系209体现在只要目标计算因子211的上一个计算因子206有输出就可以执行目标计算因子211。可以为流程单元配置条件控制阀212,所述条件阀可以自定义配置条件阀值,计算程序可以在运算结束后设置条件阀值来执行满足条件的流程。第三方算法接入SDK为软件算法接入到调度框架下的二次开发SDK,所述第三方算法接入SDK提供so、dll、jar开发库来支持运行于Windows、Linux、虚拟机等异构环境下异构算法的接入。第三方算法接入SDK负责处理接入集群的初始化工作、与任务调度微服务、统一用户登录等依赖的集群中心服务进行RPC接口通讯、以及对外提供算法程序接入平台的二次开发接口,从而将集群接入、任务流管理、数据流管理等平台业务属性对接入的算法透明,算法程序只需要基于简单的SDK接口进行少量改造便能接入到平台的计算调度中,其主要提供方法如下:1.提供一种通用文件描述结构体来作为异构算法间对文件进行识别的协议描述,所述通用文件描述结构体包括文件类型、产生该文件的算法模块编码、平台自定义注册数据类型、文件绝对路径、自定义参数五个属性。其中,所述文件类型用来标记文件为文件、文件夹,所述产生该文件的算法模块编码用来标记该文件是由那个算法产生的。所述平台自定义注册数据类型为向平台注册的数据类型唯一码,平台提供数据类型注册界面,可以向平台注册指定的数据类型,平台为所述数据类型生成一个全局的唯一标识码,算法程序可以通过判断平台自定义注册数据类型来确定该文件是否是所要处理的指定数据类型的文件。所述文件绝对路径为算法程序可直接读取的文件绝对路径。所述自定义参数属性用来存取算法执行过程中需要传递的某些自定义参数,例如所述文件描述结构体描述的是一张tiff影像,则可以将所述tiff影像的影像范围、七参数等信息根据自定义的数据结构组织后赋值给所述自定义参数属性进行业务参数传递。2.提供设置数据源的接口,所述数据源用通用文件描述结构体进行描述,遵循通用文件描述结构体的使用协议准则,所述数据源作为整个调度流程的输入数据源对所有计算因子可见,且支持数据源的增量添加,当所述数据源是本地数据时,所述设置数据源的接口先将本地数据提交至服务器指定的目录,再向平台提交数据源。同时还提供用于获取数据源的接口,并提供用于监听数据源变化的回调函数注册接口,计算程序可以通过注册回调函数来监听数据源变化从而具备了对流式数据源的动态处理能力。3.提供设置输出数据的接口,所述输出数据是一个或多个“任务编码-数据列表”的map集合,其中任务编码对接入的计算程序透明,所述数据列表中的数据用通用文件描述结构体进行描述,遵循通用文件描述结构体的使用协议准则,所述输出数据为计算因子的输出数据,所述输出数据作为关联于所述计算因子的下一个或多个计算因子的输入数据。同时提供获取指定计算因子输入数据的接口,所述输入数据是上一计算因子的输出数据,所述数据用通用文件描述结构体进行描述,遵循通用文件描述结构体的使用协议准则。同时提供注册用于监听所述输入数据的回调函数注册接口,计算程序可以通过所述接口注册回调函数来监听输入数据的变化从而具备对流式输入数据的动态处理能力。4.提供设置全局数据的接口,所述全局数据用通用文件描述结构体进行描述,遵循通用文件描述结构体的使用协议准则。同时提供获取全局数据的接口,所述全局数据用通用文件描述结构体进行描述,遵循通用文件描述结构体的使用协议准则,所述全局数据对流程图内所有计算因子可见,即所有计算因子通过所述获取全局数据的接口都能获取到所述全局数据,适用于某些数据对流程图内无直接关联关系的计算因本文档来自技高网
...

【技术保护点】
1.一种分布式流程图异构计算调度方法,其总体特征包括:自定义配置分布式异构计算调度流程图,以中心化的调度微服务对计算流程进行调度管理,结合Hadoop任务规划和PC任务规划服务对并行计算任务进行合理资源分配并通过运行于Linux、Windows异构环境下的守护进程接收并执行异构算法,异构算法间的数据无缝自动流转,对流式数据进行流式任务的动态处理,用于接入分布式异构计算平台的二次开发接口等。

【技术特征摘要】
1.一种分布式流程图异构计算调度方法,其总体特征包括:自定义配置分布式异构计算调度流程图,以中心化的调度微服务对计算流程进行调度管理,结合Hadoop任务规划和PC任务规划服务对并行计算任务进行合理资源分配并通过运行于Linux、Windows异构环境下的守护进程接收并执行异构算法,异构算法间的数据无缝自动流转,对流式数据进行流式任务的动态处理,用于接入分布式异构计算平台的二次开发接口等。2.根据权利要求1所述的一种自定义配置分布式异构计算调度流程图,其特征包括:自定义业务流程图,并可对流程图单元配置多个预处理、处理、后处理计算因子;其中每个预处理、后处理计算因子可配置一个计算程序,处理计算因子可以配置多种不同类型的计算程序;流程图单元间可以配置强、弱关联关系,计算因子间可以配置强、弱关联关系;流程图单元可以设置条件控制阀来进行调度流程分支决策。3.根据权利要求2所述的强、弱关联关系,其特征包括:强关联的流程图单元间只有流程图单元完成后才能执行与之关联的流程图单元,弱关联的流程图单元间只要流程图单元有输出就能执行与之关联的流程图单元,强关联的计算因子间只有计算因子完成后才能执行与之关联的计算因子,弱关联的计算因子间只要计算因子有输出就能执行与之关联的计算因子。4.根据权利要求1所述的一种以中心化的调度微服务对计算流程进行调度管理方法,其特征在于:一个计算流程图运行一个调度微服务,通过自定义分布式异构计算流程图配置模板初始化调度模型,依据依赖关系执行计算因子,接收并保存各计算节点的输出数据,提供计算因子、流程图单元间的数据流转控制,提供并行计算调度机制,维系计算因子及流程图单元的执行状态。5....

【专利技术属性】
技术研发人员:李建雄李鹏黄仰黄朝燊郑仙侠陈奇
申请(专利权)人:武汉兆格信息技术有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1