一种在分布式系统中进行图数据分配的方法及装置制造方法及图纸

技术编号:39739169 阅读:21 留言:0更新日期:2023-12-17 23:40
本说明书实施例涉及一种在分布式系统中进行图数据分配的方法和装置,所述分布式系统包含排列为

【技术实现步骤摘要】
一种在分布式系统中进行图数据分配的方法及装置


[0001]本说明书一个或多个实施例涉及图处理领域,尤其涉及一种在分布式系统中进行图数据分配的方法及装置


技术介绍

[0002]近年来,图数据的应用例如知识图谱,在多种场景下得到了广泛的应用,伴随着应用场景的扩展,图数据的规模也在急剧增加,早已超过单台机器内存的限制,这给下游的图计算或图深度学习等应用带来了挑战

目前,相关领域中传统的策略是采用分布式方案,通过图分片将大规模图谱数据切分为多片,每台机器加载其中的一片,分布式地执行计算

[0003]在分布式方案中,分片质量的好坏
(
单个分片内部的图连通度以及不同分片之间的图数据的重复度
)
决定了下游任务中内存占用

负载均衡和效率,常规的分片方案往往不能满足这些需求,因此需要设计更高效的图分片方法


技术实现思路

[0004]本说明书一个或多个实施例描述了一种在分布式系统中进行图数据分配的方法及装置,旨在使多台工作设备之间本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种在分布式系统中进行图数据分配的方法,所述分布式系统包含排列为
N*N
维设备矩阵的
N*N
台工作设备,所述方法通过其中任意的第一工作设备执行,包括:获取第一图数据中若干节点的节点数据以及若干连接边的边数据,所述边数据指示对应连接边所连接的两个节点;根据任一节点的节点数据,使用预设的映射函数确定所述节点的目标编号,所述映射函数用于将节点数据映射为整形数据;对于任意的目标连接边,使用第一映射规则,将其边数据中的两个目标节点的两个目标编号,分别映射为
N*N
维设备矩阵中的行索引和列索引,根据行索引和列索引在所述设备矩阵中确定目标工作设备;将所述目标连接边和所述两个目标节点的相关数据发送到所述目标工作设备
。2.
根据权利要求1所述的方法,其中,所述第一图数据是全图数据中随机分配给所述第一工作设备的部分图数据
。3.
根据权利要求1所述的方法,其中,所述映射函数为哈希函数
。4.
根据权利要求1所述的方法,还包括:接收其它工作设备发送的节点和连接边数据,并将其储存为第二图数据
。5.
根据权利要求2所述的方法,还包括:从当前的第二图数据中确定一个未标记的节点作为种子节点,并将其标记;执行多轮迭代,直到第二图数据中所有的节点被标记,其中任意一轮迭代包括:使用所述第一映射规则,将所述种子节点的目标编号映射为第一索引号,根据第一索引号从所述设备矩阵中确定多台工作设备,所述多台工作设备包括,所述第一索引号指示的行中的工作设备,和第一索引号指示的列中的工作设备;向所述多台工作设备发送第一请求,所述第一请求用于请求获取所述种子节点的未被标记的邻居节点以及对应的连接边;将从所述多台工作设备接收的节点存入所述第二图数据,并将其标记;从所述接收的节点中确定至少一个节点作为新的种子节点
。6.
根据权利要求1所述的方法,其中,所述节点数据包括节点的初始编号和类型属性;根据任一节点的节点数据,使用预设的映射函数确定所述节点的目标编号,包括:将所述初始编号与类型属性进行字符串拼接,得到第一字符串;将所述第一字符串输入到所述映射函数中,得到目标编号
。7.
根据权利要求1所述的方法,其中,所述两个目标节点的目标编号分别为第一目标编号和第二目标编号,且第一目标编号小于第二目标编号;使用第一映射规则,将其边数据中的两个目标节点的两个目标编号,分别映射为
N*N
维设备矩阵中的行索引和列索引,包括:使用第一映射规则,将所述第一目标编号映射为所述行索引;使用第一映射规则,将所述第二目标编号映射为所述列索引
。8.
根据权利要求1所述的方法,其中,所述第一映射规则为,将对应的目标编号对
N
取模
。9.

【专利技术属性】
技术研发人员:万小培敬斌朱仲书
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

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

1