[发明专利]一种分布式数据处理方法及装置在审
申请号: | 201611178256.7 | 申请日: | 2016-12-19 |
公开(公告)号: | CN106776026A | 公开(公告)日: | 2017-05-31 |
发明(设计)人: | 邓怡豪 | 申请(专利权)人: | 北京奇虎科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京市浩天知识产权代理事务所(普通合伙)11276 | 代理人: | 宋菲,刘兰兰 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 数据处理 方法 装置 | ||
技术领域
本发明涉及数据处理技术领域,具体涉及一种分布式数据处理方法及装置。
背景技术
分布式数据处理也可以称为分布式计算、分布式处理或分布式事务处理。分布式数据处理是指在计算或处理时,发起者将需要计算的数据或需要处理的事务分成多个子计算、子处理或子事务,然后把这些子计算、子处理或子事务分配给多个参与者进行计算或处理,最后发起者把各参与者的处理结果综合起来得到最终的结果。
随着大数据时代的到来,各行各业需要处理的数据量越来越大,而分布式数据处理技术的引入,极大地提高了数据处理效率,促进了各行各业的发展。
但是,发明人在实现本发明的过程中,发现在现有技术中至少存在如下问题:在分布式数据处理过程中,通常根据数据的键将需要处理的数据分发到参与处理的各个服务器上,因此,键相同的数据将被分发到同一台服务器上,若某一个键对应的数据量非常大,则会出现数据分发不均匀的情况。此时,个别服务器被分发的数据量特别多,而其他服务器被分发数据量比较少,这种情况下,数据多的服务器运算负荷大,处理花费的时间长,拉低了整体的数据处理效率;而数据少的服务器运算负荷小,部分运算能力被闲置,利用率不高,导致了资源的浪费。同时,当一台服务器上处理的数据量过大时还常常出现处理失败的情况。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的分布式数据处理方法和相应的分布式数据处理装置。
根据本发明的一个方面,提供了一种分布式数据处理方法,该方法包括:将在同一数据集中的出现次数大于预设次数的键对应的数据确定为倾斜数据,将包含倾斜数据的数据集确定为倾斜数据集,将未包含倾斜数据的数据集确定为非倾斜数据集;根据预设的键标记集合,为倾斜数据集中的每个数据的原始键分别添加一个键标记,得到处理后的倾斜数据集;其中,键标记集合中包含N个不同的键标记,N为自然数;将非倾斜数据集中的每个数据复制为N个,得到扩容后的非倾斜数据集,根据键标记集合,为扩容后的非倾斜数据集中的每个数据的原始键分别添加一个键标记,得到处理后的非倾斜数据集;按照预设的数据分配规则,将处理后的倾斜数据集以及处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理。
可选的,处理后的倾斜数据集以及处理后的非倾斜数据集中的各个数据的键为该数据的原始键与该数据的键标记的组合;则按照预设的数据分配规则,将处理后的倾斜数据集以及处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理的步骤具体包括:根据各个数据的键,将处理后的倾斜数据集以及处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理。
可选的,将处理后的倾斜数据集以及处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理的步骤之后,进一步包括:从处理后的各个数据的键中删除键标记,得到各个数据的原始键。
可选的,为倾斜数据集中的每个数据的原始值分别添加一个键标记的步骤具体包括:将键标记集合中的各个键标记依次添加到倾斜数据集中的各个数据的原始键中;或者,将键标记集合中的各个键标记随机添加到倾斜数据集中的各个数据的原始键中。
可选的,为扩容后的非倾斜数据集中的每个数据的原始键分别添加一个键标记的步骤具体包括:将键标记集合中的各个键标记依次添加到扩容后的非倾斜数据集中的各个数据的原始键中;或者,将键标记集合中的各个键标记随机添加到扩容后的非倾斜数据集中的各个数据的原始键中。
可选的,键标记包括:用于添加在原始键的起始位置的前缀型键标记,和/或,用于添加在原始键的末尾位置的后缀型键标记;并且,键标记包括以下中的至少一种:单字符类键标记、字符串类键标记、以及数字类键标记。
可选的,当键标记为数字类键标记时,数据分配规则包括:对每个数据的键进行模运算,根据运算结果为该数据分配服务器;和/或,当键标记为单字符类键标记和/或字符串类键标记时,数据分配规则包括:根据各个数据的键中包含的相同字符的个数,对各个数据的键进行聚类处理,根据聚类处理的结果为各个数据分配服务器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司,未经北京奇虎科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611178256.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种计算机集群作业调度方法及其装置
- 下一篇:一种工作负载预测方法及装置