【技术实现步骤摘要】
分布式图计算的方法、装置、设备及存储介质
[0001]本申请涉及图计算领域,特别涉及一种分布式图计算的方法、装置、设备及存储介质。
技术介绍
[0002]图是用于表示对象之间关联关系的一种抽象数据结构,使用顶点和边进行描述:顶点表示对象,边表示对象之间存在关联。在一个图中,可以包括多个顶点,每个顶点可以与多个顶点相关联,其中任意两个相关联的顶点存在一个边,这样,可以形成一个网状的图数据结构。图计算便是以图作为数据模型来表达不同数据之间的问题,并解决数据之间的问题的一种计算。
[0003]在现有技术中,经常采用分布式图计算来解决一些较为复杂的图计算问题。进行分布式图计算,首先需要将一个复杂的图进行切分,分别存储在不同的设备上,然后在每个设备上存储有进行图计算的方法,当设备执行图计算方法时,当需要其他设备上存储的顶点数据时,可以向其他设备发送获取请求,收到获取请求的设备可以将相应的顶点数据,送给到该设备中,供该设备继续执行图计算任务。
[0004]在实现本申请的过程中,专利技术人发现现有技术至少存在以下问题:r/>[0005]由本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种分布式图计算的方法,其特征在于,所述方法应用于第一设备,所述方法包括:确定所述目标任务的初始子任务;基于待执行的目标任务的各子任务之间的依赖关系,自所述初始子任务开始执行所述目标任务的各子任务;当所述目标任务的第一子任务执行完毕时,基于所述依赖关系,确定所述第一子任务下一步的第二子任务,确定所述第二子任务的输入数据所存储的第二设备,向所述第二设备发送任务继续执行通知,其中,所述任务继续执行通知中携带有所述第一子任务的输出数据和所述第二子任务的标识。2.根据权利要求1所述的方法,其特征在于,所述基于待执行的目标任务的各子任务之间的依赖关系,确定所述目标任务的至少一个初始子任务之前,所述方法还包括:对应所述目标任务的各子任务建立输入缓存队列和输出缓存队列,其中,所述输出缓存队列用于缓存所属子任务的输出数据,所述输入缓存队列用于缓存所属子任务的上一步的子任务的输出数据。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述目标任务的第三子任务的输出缓存队列中缓存的输出数据的数目达到预设的第一数目阈值时,停止执行所述第三子任务的处理;当所述目标任务的第三子任务的输出缓存队列中缓存的输出数据的数目小于预设的第一数目阈值时,重新开始执行所述第三子任务的处理。4.根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述目标任务的第四子任务的输入缓存队列中缓存的输入数据的数目达到预设的第二数目阈值时,如果第四子任务前一步的第五子任务的输入数据存储于第一设备,则停止将所述第五子任务的输出缓存队列中的输出数据向所述第四子任务的输入缓存队列转移,如果第四子任务前一步的第五子任务的输入数据存储于第三设备,则向所述第三设备发送停止传输通知,其中,所述停止传输通知用于指示所述第三设备停止将所述第五子任务的输出缓存队列中的输出数据向所述第一设备传输;当所述目标任务的第四子任务的输入缓存队列中缓存的输入数据的数目小于预设的第二数目阈值时,如果第四子任务前一步的第五子任务的输入数据存储于第一设备,则重新开始将所述第五子任务的输出缓存队列中的输出数据向所述第四子任务的输入缓存队列转移,如果第四子任务前一步的第五子任务的输入数据存储于第三设备,则向所述第三设备发送启动传输通知,其中,所述启动传输通知用于指示所述第三设备重新开始将所述第五子任务的输出缓存队列中的输出数据向所述第一设备传输。5.根据权利要求2所述的方法,其特征在于,所述方法还包括:对于所述目标任务的第六子任务,在所述初始子任务开始执行时,启动预设时长的计时器;如果在所述计时器的计时时长达到预设时长之前,所述第六子任务的输出缓存队列中输出数据的数据量达到预设的数据量阈值,则如果所述第六子任务的下一步的第七子任务的输入数据所存储的第四设备与所述第六子任务的输出数据所存储的第五设备相同,则将所述输出数据移动至所述第七子任务的输入缓存队列,如果所述第六子任务的下一步的第七子任务的输入数据所存储的第四设备与所述第六子任务的输出数据所存储的第五设备
不同,则向所述第五设备发送携带有所述第六子任务的输出缓存队列中输出数据和所述第七子任务的标识的任务继续执行通知;如果在所述计时器的计时时长达到预设时长时,所述第六子任务的输出缓存队列中输出数据的数据量未达到预设的数据量阈值,则如果所述第六子任务的下一步的第七子任务的输入数据所存储的第四设备与所述第六子任务的输出数据所存储的第五设备相同,则将所述输出数据移动至所述第七子任务的输入缓存队列,如果所述第六子任务的下一步的第七子任务的输入数据所存储的第四设备与所述第六子任务的输出数据所存储的第五设备不同,则向所述第五设备发送携带有所述第六子任务的输出缓存队列中输出数据和所述第七子任务的标识的任务继续执行通知。6.一种分布式图计算的装置,其特征在于,所述装置应用于第一设备,所述装置包括:确定模块,被配置为确定所述目标任务的初始子任务;执行模块,被配置为基于待执行的目标任务的各子任务之间的依赖关系,自所述初始子任务开始执行所述目...
【专利技术属性】
技术研发人员:赵尚宇,陈哲嘉,
申请(专利权)人:杭州海康威视数字技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。