处理方法和处理装置制造方法及图纸

技术编号:21453678 阅读:34 留言:0更新日期:2019-06-26 04:42
本申请公开一种处理方法,应用于集群中的计算节点,包括:统计计算节点中待处理数据的数据量;获得计算节点的指定的初始并行度,并基于待处理数据的数据量处理初始并行度。通过待处理数据的数据量处理指定的初始并行度,可以动态调整Shuffle任务所占用的计算资源,从而提高平台整体的计算效率和资源利用率。

【技术实现步骤摘要】
处理方法和处理装置
本申请涉及大数据
,更具体地说,涉及一种处理方法和处理装置。
技术介绍
Spark是一种基于内存计算的分布式大数据并行处理平台,它集批处理、实时流处理、交互式查询与图计算于一体。现有Spark往往基于预设参数确定Shuffle的并行度,但在处理过程中就很容易出现物理资源浪费。
技术实现思路
为解决上述问题,本申请提供如下技术方案:一种处理方法,应用于集群中的计算节点,包括:统计所述计算节点中待处理数据的数据量;获得所述计算节点的指定的初始并行度,并基于所述待处理数据的数据量处理所述初始并行度。优选的,其中,所述统计所述计算节点中待处理数据的数据量,包括:至少获得所述待处理数据的需求内存。优选的,其中,所述基于所述待处理数据的数据量处理所述初始并行度,包括:至少基于所述待处理数据的需求内存确定所述计算节点的并行度允许范围;根据所述并行度允许范围处理所述初始并行度。优选的,其中,所述至少基于所述待处理数据的需求内存确定所述计算节点的并行度允许范围,包括:根据所述待处理数据的需求内存和预设内存分区规则确定所述计算节点的第一并行度允许范围。优选的,其中,所述至少基于所述待处理数据的需求内存确定所述计算节点的并行度允许范围,还包括:根据所述待处理数据的数据行数和预设行数分区规则处理所述第一并行度允许范围,得到第二并行度允许范围。优选的,所述方法还包括:获得所述计算节点的硬件状态,并基于所述计算节点的硬件状态调整所述初始并行度的处理结果。优选的,其中,所述获得所述计算节点的硬件状态,包括:获得所述计算节点中CPU核的数量。优选的,其中,所述获得所述计算节点的硬件状态,还包括:获得所述CPU核的资源占用情况,所述资源占用情况至少包括占用内存。优选的,其中,所述资源占用情况还包括:网络传输速率和/或I/O读写速率。一种处理装置,包括:统计模块,用于统计所述计算节点中待处理数据的数据量;处理模块,用于获得所述计算节点的指定的初始并行度,并基于所述待处理数据的数据量处理所述初始并行度。经由上述的技术方案可知,本申请实施例提供一种处理方法,针对现有处理过程中所出现的物理资源浪费,通过待处理数据的数据量处理指定的初始并行度,可以动态调整Shuffle任务所占用的计算资源,从而提高平台整体的计算效率和资源利用率。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请实施例集群的架构图示例;图2为本申请实施例一公开的处理方法的方法流程图;图3为本申请实施例二公开的处理方法的方法流程图;图4为本申请实施例三公开的处理方法的方法流程图;图5为本申请实施例四公开的处理方法的方法流程图;图6为本申请实施例五公开的处理方法的方法流程图;图7为本申请实施例六公开的处理方法的方法流程图;图8为本申请公开的处理装置的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请公开的处理方法,应用于集群中的计算节点,以下首先对于该计算节点做如下说明:计算节点所在的集群具有计算功能,该集群由多个计算节点构成。如图1所示的集群的架构图示例,该集群中有N个计算节点,以计算节点1为例进行说明,该计算节点中3个executor(执行器),以executor作为基础计算单位,每个executor占用相同的物理资源,比如CPU核。集群的数据分布式存储于各计算节点中,基于预设参数可以确定集群的Shuffle并行度,而针对每一个计算节点来说,相应可以确定该计算节点用于处理本地存储数据的并行度。其中,所有计算节点的并行度之和就等于集群的Shuffle并行度。在计算节点执行Shuffle任务之前,首先按照该计算节点的并行度对本地存储数据进行数据分片,分片所得到的数据片的数量即为该计算节点的并行度。而计算节点在执行Shuffle任务的过程中,每个CPU核同一时间最多处理一个数据片,且一旦数据片存在数据缺失、数据异常等情况,还可以向其他计算节点请求数据片。因此,计算节点如果仅基于指定的并行度进行数据分区,很容易出现数据片的数据量过大或者过小的情况,过小数据量的数据片占用过多资源、过大数据量的数据片带给局部资源压力过大,都会造成物理资源浪费。本申请公开的一种处理方法实施例一中,如图2所示,该方法包括如下步骤:步骤101:统计计算节点中待处理数据的数据量。首先,可以根据配置信息从本地存储数据中确定待处理数据。具体的:一般来说,本地存储数据以文件的形式存储。因此,通过遍历指定文件存储目录下的数据文件可以获得数据文件的相关属性信息,比如文件名称,再比如文件扩展名等。进而,可以基于选取指定属性信息的数据文件中的数据作为待处理数据,比如选取文件名称包含A的数据文件中的数据作为待处理数据。当然,还可以进一步设置筛选条件,比如,去除文件扩展名为a的数据文件,再比如,去除数据文件下表格扩展名为b的数据表等等。本实施例对于待处理数据的筛选方式并不限定,可以理解的是,其他未列举的方式也在本实施例的保护范围内。需要说明的是,还可以将该指定文件存储目录下所有数据文件中的数据作为待处理数据,此时,也就无需遍历属性信息。进一步,针对待处理数据的数据量,可以以遍历的方式精确统计,还可以按照指定规则进行预估统计,本实施例对此不做限定。假设待处理数据确定为数据文件1下的数据表1和数据表2,以数据表1为例进行说明:遍历数据表1中的所有数据,确定数据表1的所有属性信息,比如数据行数、数据列数以及数据占用内存等等。而为节约计算资源,可以仅遍历其中的数据行数,并按照预先设置的数据行与数据占用内存的对应关系,预测数据表1的数据占用内存。当然,还可以设置其他预估规则,本实施例对此不做限定,可以理解的是,其他未列举的规则也在本实施例的保护范围内。步骤102:获得计算节点的指定的初始并行度,并基于待处理数据的数据量处理初始并行度。本实施例中,计算节点的指定的初始并行度,即该计算节点基于预设参数确定的用于处理本地存储数据的并行度。另外,基于待处理数据的数据量处理初始并行度的过程如下:首先可以指定用于处理初始并行度的属性信息,以数据行数为例,可以预先指定不同数据行数对应的目标并行度,并按照所指定的目标并行度调整初始并行度。继续以数据文件1为例进行说明,该数据文件1下存在数据表1和数据表2,可以分别统计数据表1和数据表2的数据行数。以数据表1为例,假设数据表1的数据行数为a,通过查表方式确定数据行数a对应的目标并行度为b。以同样的方式确定数据表2对应的目标并行度c,此时可以确定待处理数据的目标并行度为b+c,此时可以将初始并行度直接调整至b+c,且后续执行Shuffle任务时也分别按照目标并行度b和c分别对数据表1和数据表2进行数据分区。当然,在此基础本文档来自技高网...

【技术保护点】
1.一种处理方法,应用于集群中的计算节点,包括:统计所述计算节点中待处理数据的数据量;获得所述计算节点的指定的初始并行度,并基于所述待处理数据的数据量处理所述初始并行度。

【技术特征摘要】
1.一种处理方法,应用于集群中的计算节点,包括:统计所述计算节点中待处理数据的数据量;获得所述计算节点的指定的初始并行度,并基于所述待处理数据的数据量处理所述初始并行度。2.根据权利要求1所述的方法,其中,所述统计所述计算节点中待处理数据的数据量,包括:至少获得所述待处理数据的需求内存。3.根据权利要求2所述的方法,其中,所述基于所述待处理数据的数据量处理所述初始并行度,包括:至少基于所述待处理数据的需求内存确定所述计算节点的并行度允许范围;根据所述并行度允许范围处理所述初始并行度。4.根据权利要求3所述的方法,其中,所述至少基于所述待处理数据的需求内存确定所述计算节点的并行度允许范围,包括:根据所述待处理数据的需求内存和预设内存分区规则确定所述计算节点的第一并行度允许范围。5.根据权利要求4所述的方法,其中,所述至少基于所述待处理数据的需求内存确定所述计算节点的...

【专利技术属性】
技术研发人员:李栋
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:北京,11

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

1