【技术实现步骤摘要】
针对数据倾斜的数据处理的方法和装置
[0001]本公开涉及分布式计算和数据处理
,尤其涉及一种针对数据倾斜的数据处理的方法和装置。
技术介绍
[0002]在很多数据处理的场景下,存在不同细粒度程度的数据,对于粗细粒度的数据,在计算时需要基于该粗细粒度数据下的更细化细粒度的明细数据进行计算。以物流场景作为示例,一件货物首先属于一个包裹,一个包裹属于一个运单,在一个路段内,运单会对应一个委托书,委托书会对应一个派车单,一个派车单属于一个派车任务。因为存在这样的所属关系,基于更细化细粒度的明细数据计算粗粒度下的聚合值,是物流场景下非常常见的聚合计算的特征,例如,基于多个运单明细体积来计算委托书明细体积。
[0003]然而,这些数据处理场景经常会面临数据倾斜的问题。数据倾斜是指在分布式系统处理数据过程中,数据从上游往下游分发时,发送到不同节点的数据量明显不均匀的情况,其中极少量的节点要处理大量数据,剩余节点要处理的数据量很小的情况。由此导致集群的资源利用率不高且部分节点处理时效性差的问题。
技术实现思路
[0004]为了解决上述技术问题或者至少部分地解决上述技术问题,本公开的实施例提供了一种针对数据倾斜的数据处理的方法和装置。
[0005]第一方面,本公开的实施例提供了一种针对数据倾斜的数据处理的方法。上述方法包括:获取待处理的键
‑
值对形式的关联数据,上述关联数据的键为处理对象的标识,上述关联数据的值为上述处理对象的明细数据;预判上述关联数据对应的键是否为热点键,上述 ...
【技术保护点】
【技术特征摘要】
1.一种针对数据倾斜的数据处理的方法,其特征在于,包括:获取待处理的键
‑
值对形式的关联数据,所述关联数据的键为处理对象的标识,所述关联数据的值为所述处理对象的明细数据;预判所述关联数据对应的键是否为热点键,所述热点键用于表征所述关联数据的明细数据一次性计算需要消耗的计算资源超出设定阈值的状态;在预判所述关联数据对应的键为热点键的情况下,将所述关联数据进行初始分组,使得各组的数据处理量符合预设范围,并将划分后的各组关联数据分发至第一处理集群的资源槽中进行计算,得到中间处理结果;基于所述关联数据的键,对所述关联数据进行重新分组,并根据所述中间处理结果来对经重新分组后的关联数据进行计算,得到目标处理结果。2.根据权利要求1所述的方法,其特征在于,将所述关联数据进行初始分组,使得各组的数据处理量符合预设范围,包括:获取所述关联数据的描述字段信息,所述描述字段信息为所述关联数据中与所述键无关的额外描述信息或者与所述键有关且为所述键下属的细粒度更高的描述信息;根据所述关联数据的总个数和所述第一处理集群中资源槽的最大并行度进行平均分配计算,得到关联数据在平均分配状态下各组的数据量范围;当所述各组的数据量范围符合所述预设范围时,根据所述描述字段信息,将所述关联数据划分为多组数据,且各组的分组号的最大值不超过所述最大并行度。3.根据权利要求2所述的方法,其特征在于,还包括:当所述各组的数据量范围不符合所述预设范围时,将所述关联数据划分为多个批次,使得每个批次的关联数据的总量在所述资源槽的数据处理量承接范围之内。4.根据权利要求3所述的方法,其特征在于,所述将划分后的各组关联数据分发至第一处理集群的资源槽中进行计算,得到中间处理结果,包括:将一个或多个批次的各组关联数据的分组号和对应的键进行拼接,得到拼接有分组号的分组标识键;对所述分组标识键进行哈希计算;根据所述分组标识键进行哈希计算后的结果,将所述一个或多个批次的各组关联数据分发至第一处理集群对应的资源槽进行计算,得到各组关联数据的计算结果,所述计算结果作为所述中间处理结果。5.根据权利要求1所述的方法,其特征在于,还包括:在预判所述关联数据对应的键不是热点键的情况下,将所述关联数据分发至第二处理集群的资源槽中进行计算,得到目标处理结果,所述第二处理集群与所述第一处理集群为不同的集群。6.根据权利要求5所述的方法,其特征在于,将所述关联数据分发至第二处理集群的资源槽中进行计算,得到目标处理结果,包括:对所述关联数据的键进行哈希计算;根据所述关联数据的键进行哈希计算后的结果,将所述关联数据分发至第二处理集群对应的资源槽进行计算,得到的计算结果作为所述目标处理结果。7.根据权利要求5所述的方法,其特征在于,所述关联数据中的明细数据均被分发至中
间状态缓存中,所述中间状态缓存中的数据能被所述第一处理集群和所述第二处理集群共同访问。8.根据权利要求1所述的方法,其特征在于,所述预判所述关联数据对应的键是否为热点键,包括:读取热点键缓存列表中的列表数据;在所述热点键缓存列表中不存在列表数据的情况下,提取所述关联数据中处理对象的特征信息;将所述特征信息输入至预先训练好的逻辑回归模型中进行处理,输出所述特征信息对应的关联数据的键是否为热点键的结果,并将结果为热点键的关联数据的键信息作为列表数据存入至热点键缓存列表中。9.根据权利要求8所述的方法,其特征在于,所述逻辑回归模型用于确定所述特征信息对应的预测明细数据,并根据所述预测明细数据确定所述关联处理对象对应的预测明细数据是否导致数据倾斜状态;所述数据倾斜状态为所述预测明细数据一次性计算需要消耗的计算资源超出设定阈值的状态;在所述逻辑回归模型确定所述预测明细数据导致数据倾斜状态的情况下,输出所述关联数据对应的键为热点键的结果;在所述逻辑回归模型确定所述预测明细数...
【专利技术属性】
技术研发人员:纪应龙,陈健璋,
申请(专利权)人:北京京东振世信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。