一种分布式数据处理方法及装置与流程

文档序号:12463669阅读:来源:国知局

技术特征:

1.一种分布式数据处理方法,包括:

将在同一数据集中的出现次数大于预设次数的键对应的数据确定为倾斜数据,将包含倾斜数据的数据集确定为倾斜数据集,将未包含倾斜数据的数据集确定为非倾斜数据集;

根据预设的键标记集合,为所述倾斜数据集中的每个数据的原始键分别添加一个键标记,得到处理后的倾斜数据集;其中,所述键标记集合中包含N个不同的键标记,N为自然数;

将所述非倾斜数据集中的每个数据复制为N个,得到扩容后的非倾斜数据集,根据所述键标记集合,为所述扩容后的非倾斜数据集中的每个数据的原始键分别添加一个键标记,得到处理后的非倾斜数据集;

按照预设的数据分配规则,将所述处理后的倾斜数据集以及所述处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理。

2.根据权利要求1所述的方法,其中,所述处理后的倾斜数据集以及所述处理后的非倾斜数据集中的各个数据的键为该数据的原始键与该数据的键标记的组合;

则所述按照预设的数据分配规则,将所述处理后的倾斜数据集以及所述处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理的步骤具体包括:根据各个数据的键,将所述处理后的倾斜数据集以及所述处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理。

3.根据权利要求1或2所述的方法,其中,所述将所述处理后的倾斜数据集以及所述处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理的步骤之后,进一步包括:

从处理后的各个数据的键中删除所述键标记,得到各个数据的原始键。

4.根据权利要求1-3任一所述的方法,其中,所述为所述倾斜数据集中的每个数据的原始值分别添加一个键标记的步骤具体包括:

将所述键标记集合中的各个键标记依次添加到所述倾斜数据集中的各个数据的原始键中;或者,

将所述键标记集合中的各个键标记随机添加到所述倾斜数据集中的各个数据的原始键中。

5.根据权利要求1-4任一所述的方法,其中,所述为所述扩容后的非倾斜数据集中的每个数据的原始键分别添加一个键标记的步骤具体包括:

将所述键标记集合中的各个键标记依次添加到所述扩容后的非倾斜数据集中的各个数据的原始键中;或者,

将所述键标记集合中的各个键标记随机添加到所述扩容后的非倾斜数据集中的各个数据的原始键中。

6.根据权利要求1-5任一所述的方法,其中,所述键标记包括:用于添加在原始键的起始位置的前缀型键标记,和/或,用于添加在原始键的末尾位置的后缀型键标记;

并且,所述键标记包括以下中的至少一种:单字符类键标记、字符串类键标记、以及数字类键标记。

7.根据权利要求1-6任一所述的方法,其中,当所述键标记为数字类键标记时,所述数据分配规则包括:对每个数据的键进行模运算,根据运算结果为该数据分配服务器;和/或,

当所述键标记为单字符类键标记和/或字符串类键标记时,所述数据分配规则包括:根据各个数据的键中包含的相同字符的个数,对各个数据的键进行聚类处理,根据聚类处理的结果为各个数据分配服务器。

8.一种分布式数据处理装置,包括:

确定模块,用于将在同一数据集中的出现次数大于预设次数的键对应的数据确定为倾斜数据,将包含倾斜数据的数据集确定为倾斜数据集,将未包含倾斜数据的数据集确定为非倾斜数据集;

倾斜数据集标记模块,用于根据预设的键标记集合,为所述倾斜数据集中的每个数据的原始键分别添加一个键标记,得到处理后的倾斜数据集;其中,所述键标记集合中包含N个不同的键标记,N为自然数;

非倾斜数据集标记模块,用于将所述非倾斜数据集中的每个数据复制为N个,得到扩容后的非倾斜数据集,根据所述键标记集合,为所述扩容后的非倾斜数据集中的每个数据的原始键分别添加一个键标记,得到处理后的非倾斜数据集;

分配模块,用于按照预设的数据分配规则,将所述处理后的倾斜数据集以及所述处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理。

9.根据权利要求8所述的装置,其中,所述处理后的倾斜数据集以及所述处理后的非倾斜数据集中的各个数据的键为该数据的原始键与该数据的键标记的组合;

则分配模块具体用于:根据各个数据的键,将所述处理后的倾斜数据集以及所述处理后的非倾斜数据集中的各个数据分配给多台服务器进行分布式处理。

10.根据权利要求8或9所述的装置,其中,所述装置进一步包括:

删除模块,用于从处理后的各个数据的键中删除所述键标记,得到各个数据的原始键。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1