计算引擎选择方法和基于该方法的多计算引擎平台技术

技术编号:19746338 阅读:25 留言:0更新日期:2018-12-12 04:55
本发明专利技术提供了一种计算引擎选择方法和基于该方法的多计算引擎平台。该方法包括:将待计算任务对应的任务特征数据输入到多个计算引擎中的每一个计算引擎的任务执行时间预测模型,获得待计算任务在每一个计算引擎上的任务执行时间预测结果,其中,所述任务执行时间预测模型是基于训练样本集通过训练获得,所述训练样本集包括多条任务特征数据和对应的任务执行时间;根据所述任务执行时间预测结果从所述多个计算引擎中选择执行待计算任务的计算引擎。本发明专利技术的方法能够自动选择效率高的计算引擎,降低了任务执行时间。

【技术实现步骤摘要】
计算引擎选择方法和基于该方法的多计算引擎平台
本专利技术涉及信息
,尤其涉及一种计算引擎选择方法和基于该方法的多计算引擎平台。
技术介绍
随着国家在海、空、天、深海等方向大量新型装备的发展,装备试验变得愈发重要。例如,在歼10战斗机研制过程中,共进行了上万次的风洞试验,获得了百万条气动力数据,对这些数据的处理分析成为歼10成功研制的重要基础。装备试验包括“试验”与“评价”两个过程,是获取数据的一种途径,然后对各种数据进行分析、处理、比较,以帮助做出决策。目前仍然主要依靠专家经验与计算机辅助处理的试验数据处理方式,已经不能满足当前试验数据处理的需要,并且,由于在试验数据处理需要对规模不同的数据量进行处理,结构化与非结构化处理混杂,实时与离线处理相结合等情况,使用单一引擎已经无法应对各类试验处理需求。针对此问题,目前有三种解决思路:首先是人工管理多种引擎,将计算引擎分开部署,并采用人工方式管理计算引擎、执行计算任务,此方式需要大量人力,效率低下,同时若系统不保持全负载,就会造成巨大的资源浪费;第二种方式是使用支持各种计算需求的“超级”引擎,具体为部署一个支持所有处理方式的引擎,使用此引擎就可以满足所有的试验数据处理需求,但目前这种方式成熟度不高,距离大规模使用还需时日;第三种方式是前两者的折中,使用一个支持多计算引擎的计算平台,这种方式一方面能够应用目前成熟的各种计算引擎技术,另一方面使用自动化的方法对计算引擎和计算任务进行管理,能够提高资源利用率和任务执行效率。总之,对于上述三种方式,人工管理多种引擎效率低下,“超级”引擎一时难以满足急切需求,一个多计算引擎的计算平台是目前平衡效率和可行性的解决方案。然而,应用多计算引擎平台,需要解决多计算引擎兼容问题、计算任务统一管理问题和未来引擎的扩展的问题,因此,需要能够自动选择任务执行引擎,提高平台效率。现有支持多计算引擎的平台,都不能解决上述问题。例如,TwitterSummingBird采用Lambda架构整合了分布式批处理引擎(Hadoop)和分布式流计算引擎(Storm),在执行请求时可以整合批处理和流计算的结果,但其没有方便的引擎管理机制,同时没有提供引擎运行环境隔离;ApacheAmbari基于Web实现,支持ApacheHadoop生态的供应、管理和监控,同时提供自定义接口,支持添加各类单机或分布式引擎,但其没有提供统一的计算任务管理,只能保证特定引擎兼容性,同时需要人工选择计算引擎执行计算任务;GoogleKubernete基于Docker实现,能够以容器的方式运行计算引擎,依据需求可以运行单机引擎和分布式引擎,提供容器的部署,调度和节点集群间扩展等功能,但其没有任务管理机制,同时也需要人工选择计算引擎。因此,需要对现有技术进行改进,以提供多计算引擎平台以及面向多计算引擎平台的自动化选择计算引擎的方法。
技术实现思路
本专利技术的目的在于克服上述现有技术的缺陷,提供一种计算引擎选择方法和基于该方法的多计算引擎平台。根据本专利技术的第一方面,提供了一种计算引擎选择方法。该方法包括以下步骤:步骤1:将待计算任务对应的任务特征数据输入到多个计算引擎中的每一个计算引擎的任务执行时间预测模型,获得待计算任务在每一个计算引擎上的任务执行时间预测结果,其中,所述任务执行时间预测模型是基于训练样本集通过训练获得,所述训练样本集包括多条任务特征数据和对应的任务执行时间;步骤2:根据所述任务执行时间预测结果从所述多个计算引擎中选择执行待计算任务的计算引擎。在一个实施例中,所述任务特征数据包括算法类型、算法参数、数据类型、数据量和数据存放位置中的至少一项。在一个实施例中,通过以下步骤构建一个计算引擎的训练样本集:步骤31:收集多条用于描述任务信息的任务描述数据,;步骤32:利用该计算引擎执行每一条任务描述数据对应的任务,获得每一条任务描述数据对应的任务执行时间;步骤33:从每一条任务描述数据中提取影响任务执行时间的特征组成任务特征数据,结合所获得的任务执行时间构建该计算引擎的训练样本集。在一个实施例中,通过执行以下步骤获得一个计算引擎的任务执行时间预测模型:步骤41:基于该计算引擎的训练样本集,以任务特征数据为自变量,以任务执行时间为因变量,建立线性回归模型,表示为:yi=β0+β1xi1+…+βpxip,i=1,2,…,n其中,xi1至xip表示该计算引擎的训练样本集包含的任务特征,i表示该计算引擎的训练样本集中包含的样本数据条数的编号,n为该计算引擎的训练样本集的样本数据条数,β0为待优化偏置值,β1至βp为待优化权重值;步骤42:使用最小二乘法求解所述线性回归模型的优化权重值和偏置值;步骤43:根据获得的优化权重值和偏置值表示所述线性回归模型,获得该计算引擎的任务执行时间预测模型。在一个实施例中,步骤2包括以下子步骤:步骤51:选择预测执行时间最短的计算引擎;或者步骤52:当该预测执行时间最短的计算引擎的剩余资源不能支持待计算任务的情况下,根据所述任务执行时间预测结果依次优先选择预测时间短的计算引擎。根据本专利技术的第二方面,提供了一种多计算引擎平台。该平台包括:计算任务管理模块:用于管理计算任务的处理流程并生成计算任务信息;引擎管理模块:用于根据来自于所述计算任务管理模块的计算任务信息根据本专利技术的计算引擎选择方法来选择计算引擎;任务执行模块:用于执行计算任务并输出任务执行时间。在一个实施例中,本专利技术的多计算引擎选择平台还包括:容器管理模块:用于调用所述任务执行模块执行计算任务;用户交互模块:用于接收用户操作指令和信息;调试任务管理模块:用于执行用户调试任务并输出调试信息。在一个实施例中,当所述平台包含的计算引擎变更时,所述引擎管理模块将新计算引擎的任务执行时间预测模型激活,同时将替换掉的计算引擎的任务执行时间预测模型设置为非激活状态。与现有技术相比,本专利技术的优点在于:提供的计算引擎选择方法能够利用机器学习方法构建多个计算引擎的任务执行时间预测模型,并基于所构建的模型的预测结果结合资源情况自动选择效率最高的计算引擎,能够显著减少任务执行时间,提高试验数据处理效率;提供的基于计算引擎选择方法的多计算引擎平台提供了任务管理机制并能够支持计算引擎变更,提高了灵活性,同时对未来引擎扩展提供了良好支持。附图说明以下附图仅对本专利技术作示意性的说明和解释,并不用于限定本专利技术的范围,其中:图1示出了根据本专利技术一个实施例的计算引擎选择方法的流程图;图2示出了根据本专利技术一个实施例的多计算引擎平台的框架示意图。具体实施方式为了使本专利技术的目的、技术方案、设计方法及优点更加清楚明了,以下结合附图通过具体实施例对本专利技术进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。根据本专利技术的一个实施例,提供了一种面向多计算引擎平台的计算引擎选择方法,简言之,该方法包括:收集多个计算引擎的任务执行数据,构建训练样本集;利用所构建的训练样本集通过机器学习方式训练任务执行时间预测模型;利用训练好的任务执行时间预测模型预测每个计算引擎的任务执行时间,进而选择合适的计算引擎。具体地,参见图1所述,本专利技术的计算引擎选择方法包括以下步骤:步骤S110,收集多个计算引擎的任务执行数据本文档来自技高网
...

【技术保护点】
1.一种计算引擎选择方法,包括以下步骤:步骤1:将待计算任务对应的任务特征数据输入到多个计算引擎中的每一个计算引擎的任务执行时间预测模型,获得待计算任务在每一个计算引擎上的任务执行时间预测结果,其中,所述任务执行时间预测模型是基于训练样本集通过训练获得,所述训练样本集包括多条任务特征数据和对应的任务执行时间;步骤2:根据所述任务执行时间预测结果从所述多个计算引擎中选择执行待计算任务的计算引擎。

【技术特征摘要】
1.一种计算引擎选择方法,包括以下步骤:步骤1:将待计算任务对应的任务特征数据输入到多个计算引擎中的每一个计算引擎的任务执行时间预测模型,获得待计算任务在每一个计算引擎上的任务执行时间预测结果,其中,所述任务执行时间预测模型是基于训练样本集通过训练获得,所述训练样本集包括多条任务特征数据和对应的任务执行时间;步骤2:根据所述任务执行时间预测结果从所述多个计算引擎中选择执行待计算任务的计算引擎。2.根据权利要求1所述的方法,其中,所述任务特征数据包括算法类型、算法参数、数据类型、数据量和数据存放位置中的至少一项。3.根据权利要求1所述的方法,其中,通过以下步骤构建一个计算引擎的训练样本集:步骤31:收集多条用于描述任务信息的任务描述数据,;步骤32:利用该计算引擎执行每一条任务描述数据对应的任务,获得每一条任务描述数据对应的任务执行时间;步骤33:从每一条任务描述数据中提取影响任务执行时间的特征组成任务特征数据,结合所获得的任务执行时间构建该计算引擎的训练样本集。4.根据权利要求1所述的方法,其中,通过执行以下步骤获得一个计算引擎的任务执行时间预测模型:步骤41:基于该计算引擎的训练样本集,以任务特征数据为自变量,以任务执行时间为因变量,建立线性回归模型,表示为:yi=β0+β1xi1+…+βpxip,i=1,2,…,n其中,xi1至xip表示该计算引擎的训练样本集包含的任务特征,i表示该计算引擎的训练样本集中包含的样本数据条数的编号,n为该计算引擎的训练样本集的样本数据条数,β0为待优化偏置值,β1至βp为待优化权重值;步骤42:使用最小...

【专利技术属性】
技术研发人员:杜一凡陈昭刁博宇徐勇军
申请(专利权)人:中国科学院计算技术研究所
类型:发明
国别省市:北京,11

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

1