用于寻找引擎插件的装置、方法及存储介质制造方法及图纸

技术编号:25636629 阅读:33 留言:0更新日期:2020-09-15 21:29
本发明专利技术的实施例涉及引擎插件的寻找。本发明专利技术的实施例接收用户对引擎插件的请求,该请求包括品牌信息和类别信息,然后根据所述品牌信息和类别信息,在插件池中寻找与所述请求匹配的引擎插件,其中所述插件池用于存储与计算引擎对应的引擎插件。本发明专利技术的技术方案能够支持大数据平台应用不同厂商品牌、不同类别的引擎。本发明专利技术的实施例还能支持以不同厂商品牌的命令方式来操作适用的引擎。

【技术实现步骤摘要】
用于寻找引擎插件的装置、方法及存储介质
本公开涉及大数据
,特别是涉及一种寻找引擎插件的装置、方法及存储介质。
技术介绍
随着大数据技术的发展,大数据引擎种类越来越多,例如:分布式计算框架Hadoop、图数据计算平台Giraph、在线分析引擎Presto等。这些大数据引擎满足了特定应用场景的同时也带来了挑战。例如,当大数据平台引入新型引擎时,可能会影响到平台框架的稳定性;同时也无法在同一个大数据平台上运行多种厂商(或品牌)的引擎。这些问题不仅提高了运维成本,也限制了平台的扩展能力。已有一些技术来应对上述挑战。一种现有技术提出了基于业务插件化的电商大数据采集方法,通过将爬虫业务程序编译成动态链接库文件,使得调用者可以动态下载需要的爬虫业务模块来执行,即插即用,提高业务的可扩展性。另一种现有技术包括了多数据源配置模块,该可根据需要实现任意数据的配置导入和爬取,或者通过数据源来配置XML脚本语言,实现各种数据源的编程配置和映射配置。还有一种现有技术,利用插件在大数据应用框架下组装生成大数据应用。这些现有技术只支持管理多种类别的大数据引擎,不能满足大数据平台管理多厂商(品牌)版本的大数据引擎的业务需求。
技术实现思路
本专利技术的实施例涉及一种用于寻找引擎插件的装置,包括:插件池,用于存储与计算引擎对应的引擎插件,所述引擎插件具有关联的品牌信息和类别信息;和插件匹配器,用于根据用户的请求中的品牌和类别信息在插件池中寻找与所述请求匹配的引擎插件。本专利技术的实施例还涉及一种用于寻找引擎插件的方法,包括:接收用户对引擎插件的请求,该请求包括品牌信息和类别信息;和根据所述品牌信息和类别信息,在插件池中寻找与所述请求匹配的引擎插件,其中所述插件池用于存储与计算引擎对应的引擎插件。本公开的实施例提供的技术方案能够支持大数据平台应用不同厂商品牌、不同类别的引擎。本专利技术的实施例还能支持以不同厂商品牌的命令方式来操作适用的引擎。应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并于说明书一起用于解释本公开的原理。图1是根据一示例性实施例示出的用于确定引擎插件的系统的框图;图2是根据一示例性实施例示出的用于组织引擎插件的逻辑结构图;图3是根据一示例性实施例示出的用于确定引擎插件的方法的流程图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。应当理解的是,在本文中提及的“若干个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。在本文中,“大数据引擎”指的是与大数据平台相关的各类引擎,不只限于Hadoop、Spark这种典型的大数据引擎,也包括MySQL、PostgreSQL这种关系型数据库及其他相关数据存储及数据计算引擎。对大数据引擎的操作通常包括以下几类:利用数据连接进行操作(例如Hive、MySQL);调用客户端方式进行操作(例如HadoopHDFS);命令方式进行操作,例如Spark利用spark-submit命令提交任务。图1是根据一示例性实施例示出的用于确定引擎插件的系统的框图。用户经由网络(例如因特网或局域网),通过例如HTTP或TCP协议访问大数据平台。插件管理器运行在大数据平台上(在其他实施例中,插件管理器也可以运行在大数据平台之外)。插件管理器管理各种品牌和类别的插件。插件管理器可以包括插件加载器和插件池,前者向后者中加载(或称插入)插件,以使引擎插件能够被执行。在一些实施方式中,在大数据平台启动时,插件加载器会对插件文件夹内的引擎插件进行加载,其中每个插件加载器对应一个引擎插件。向插件池中加载插件的过程可以使用现有技术,例如中国专利申请公开CN109614167A中教导的技术。在一些实施例中,向插件池加载插件时,可以与插件相关联地存储体现该插件的品牌和类别的信息。当前比较常见的引擎插件品牌例如有Apache、Cloudera、Hortonworks、华为以及Presto等,而常见的插件类别例如是Hadoop和Presto。在本公开中使用“品牌标签”和“类别插件”来指代可以存储插件的品牌和类别的信息各种数据结构。虽然在图1中未示出,但图1所示的系统可以具有一个插件根目录,在其中根据引擎的品牌和类别设置不同的插件目录。插件根目录中存储的信息可以为插件池和插件加载器管理插件时使用。在另一些实施例中,插件池包括子插件池。子插件池是通过哈希表,将体现插件的品牌或类别的关键词映射到与该品牌或类别对应的插件子集合。例如,在一些实施例中,将所有插件分别以厂商品牌、厂商版本、引擎类型、引擎版本作为哈希表的关键字,以插件的类加载器作为值存入四张哈希表中。在插件加载时,通过哈希表的使用,能够把插件的每个属性值作为关键码值从四张哈希表中取出四个子集合并进行交集运算,最终得到子插件池不同的分类维度会形成对应的子插件池,比如可以依据品牌、类别对应形成品牌子插件池、类别子插件池。例如华为公司提供的各插件都包括在与关键词“华为”对应的插件子集,而所有属于Hadoop类别的插件都包括在与关键词“Hadoop”对应的插件子集中。图2是根据一示例性实施例示出的以子插件池的方式来组织引擎插件的逻辑结构图。一方面可以以品牌为关键词来组织插件,每个品牌的关键词对应于该品牌提供的插件形成的子集。另一方面可以以类别为关键词来组织插件,每个类别的关键词对应于该类别的插件形成的子集。图1所示的插件管理器还可以包括插件匹配器,用于根据用户输入的引擎的品牌和类别信息,基于其中存储的匹配规则来确定插件池中匹配的引擎插件。用户通常是与其需要执行的任务一起输入所需引擎的品牌和类别信息的。如果找到了匹配的引擎插件,则调用该插件(因此也就能调用底层中相应的引擎)。如果没有找到匹配的引擎插件,则报出错信息,并可以试图通过插件加载器加载所需的引擎插件。在使用子集来组织引擎插件时,前述匹配规则可以是根据与用户的任务相关联的插件请求来分别从各个子插件池获取到对应的集合,再进行交集运算,最后得到相应的插件。插件请求可以包括所需插件的品牌或类别(或同时包括二者)。获取公式为:其中,p表示获得的插件,Sj表示从子插件池中获得的集合。例如对图2所示的示例中,获取到Hadoop的Apache版本插件的过程如下:a.根据品牌关键词“Apache”,从品牌子插件池获得集合S1={Hadoop本文档来自技高网...

【技术保护点】
1.一种用于寻找引擎插件的装置,包括:/n插件池,用于存储与计算引擎对应的引擎插件,所述引擎插件具有关联的品牌信息和类别信息;和/n插件匹配器,用于根据用户的请求中的品牌和类别信息在插件池中寻找与所述请求匹配的引擎插件。/n

【技术特征摘要】
1.一种用于寻找引擎插件的装置,包括:
插件池,用于存储与计算引擎对应的引擎插件,所述引擎插件具有关联的品牌信息和类别信息;和
插件匹配器,用于根据用户的请求中的品牌和类别信息在插件池中寻找与所述请求匹配的引擎插件。


2.根据权利要求1所述的装置,还包括:
插件执行器,用于执行所述匹配的引擎插件。


3.根据权利要求1所述的装置,还包括:
插件加载器,用于向所述插件池引擎插件。


4.根据权利要求3所述的装置,其中所述插件池以子集的方式组织其存储的引擎插件,其中所述子集中的所有引擎插件与一品牌或类别对应。


5.根据权利要求4所述的装置,其中所述插件匹配器能够通过下述步骤来寻找与所述用户的请求匹配的引擎插件:
确定所述插件池中与所述请求中的品牌信息对应的第一子集;
确定所述插件池中与所述请求中的类别信息对应的第二子集;以及
将所述第一子集和第二子集进行交集运算,并其该交集运算的结果确定为与所述请求匹配的引擎插件。


6.根据权利要求1所述的装置,其中所述装置能够基于所述匹配的引擎插件的品牌和类别信息来寻找与所述用户的任务对应的资源包,并通过命令来载入该资源包,以执行所述任务。


7.根据权...

【专利技术属性】
技术研发人员:方迪江敏
申请(专利权)人:杭州数澜科技有限公司
类型:发明
国别省市:浙江;33

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

1