【技术实现步骤摘要】
一种链接分析的计算方法和装置及系统
本专利技术涉及计算机
,尤其涉及一种链接分析的计算方法和装置及系统。
技术介绍
随着互联网技术的飞速发展,搜索引擎因其能够在海量的网络资源中为用户找到所需的信息而越来越受到重视。其中,基于链接分析的搜索引擎因其准确率较高,日益受到用户的欢迎。目前,链接分析对整个网页搜索起非常重要的作用。链接分析主要的功能是依据网页之间的链接关系,网页的锚文本等信息,评价网页的重要性(或称权威性),通过对网页的评价会对网页搜索最终结果的排序产生影响。现有技术中存在一种适用于大规模图计算的链接分析计算方法,适用于大规模图计算的系统Pregel,主要用于PageRank和路径计算,由于pregel目前的计算状态都是常驻内存的,对于规模继续增大的图计算对内存的要求越来越大,这种基于全内存的计算系统在内存资源不够或者数据量特别大的时候,并不适用,数据计算成本比较高。
技术实现思路
本专利技术实施例提供了一种链接分析的计算方法和装置及系统,用于减少对内存的占用,数据计算成本较低。为解决上述技术问题,本专利技术实施例提供以下技术方案:第一方面,本专利技术实施例提供一种链接分析的计算方法,包括:处理机从分布式文件系统中获取管理服务器预处理生成的第一子地图数据,所述第一子地图数据包括第一节点的身份识别码ID和所述第一节点的边所链接的目标节点的ID;所述处理机在第一超级步superstep中对所述第一子地图数据中的每一个目标节点进行权值分发,针对所述第一子地图数据中的每一个目标节点分别生成消息,所述消息包括所述处理机在第一superstep中为所述第一子 ...
【技术保护点】
一种链接分析的计算方法,其特征在于,包括:处理机从分布式文件系统中获取管理服务器预处理生成的第一子地图数据,所述第一子地图数据包括第一节点的身份识别码ID和所述第一节点的边所链接的目标节点的ID;所述处理机在第一超级步super step中对所述第一子地图数据中的每一个目标节点进行权值分发,针对所述第一子地图数据中的每一个目标节点分别生成消息,所述消息包括所述处理机在第一super step中为所述第一子地图数据中的每一个目标节点分发的权值;所述处理机将在所述第一super step中对所述第一子地图数据中的每一个目标节点分别生成的消息存储到所述分布式文件系统中。
【技术特征摘要】
1.一种链接分析的计算方法,其特征在于,包括:处理机从分布式文件系统中获取管理服务器预处理生成的第一子地图数据,所述第一子地图数据包括第一节点的身份识别码ID和所述第一节点的边所链接的目标节点的ID;所述处理机在第一超级步superstep中对所述第一子地图数据中的每一个目标节点进行权值分发,针对所述第一子地图数据中的每一个目标节点分别生成消息,所述消息包括所述处理机在第一superstep中为所述第一子地图数据中的每一个目标节点分发的权值;所述处理机将在所述第一superstep中对所述第一子地图数据中的每一个目标节点分别生成的消息存储到所述分布式文件系统中;其中,所述处理机将在所述第一superstep中对所述第一子地图数据中的每一个目标节点分别生成的消息存储到所述分布式文件系统中,包括:所述处理机将在所述第一superstep中每生成一个消息后,就将生成的消息留存在所述处理机的内存中;当所述处理机的内存中留存的消息数量达到预置的消息记录数时,所述处理机将所述内存中留存的消息发送到所述处理机的本地数据缓冲区,所述本地数据缓冲区中还存储有所述处理机对第二子地图数据中的每个目标节点分别生成的消息,所述第二子地图数据包括第二节点的ID和所述第二节点的边所链接的目标节点的ID;当所述本地数据缓冲区中存储的消息超过容量门限时,所述处理机将所述本地数据缓冲区中存储的消息批量存储到所述分布式文件系统中。2.根据权利要求1所述的方法,其特征在于,所述处理机将所述内存中留存的消息发送到所述处理机的本地数据缓冲区之后,还包括:所述处理机将所述本地数据缓冲区中对相同目标节点分别生成的消息进行合并和压缩。3.根据权利要求1所述的方法,其特征在于,所述第一子地图数据中还包括:所述第一节点的边所链接的目标节点中属于悬挂dangling节点的目标节点;所述处理机在第一超级步superstep中对所述第一子地图数据中的每一个目标节点进行权值分发之后,还包括:所述处理机将对属于dangling节点的目标节点分发的权值进行合并,得到所述第一节点在所述第一superstep中对应的dangling分数;所述处理机将所述第一节点在所述第一superstep中对应的dangling分数存储到所述分布式文件系统中,以使所述管理服务器通过所述分布式文件系统获取到在完成所述第一superstep的计算后所述第一节点对应的dangling分数。4.根据权利要求1所述的方法,其特征在于,所述方法,还包括:所述处理机监测所述分布式文件系统中所述第一节点对应的源节点是否为所述第一节点生成有消息,所述第一节点为所述源节点的目标节点;若所述源节点为所述第一节点生成有消息,所述处理机从所述分布式文件系统中获取所述源节点为所述第一节点生成的消息;所述处理机对所有源节点为所述第一节点分发的权值进行合并,得到所述第一节点的权值。5.根据权利要求4所述的方法,其特征在于,所述处理机对所有源节点为所述第一节点分发的权值进行合并,包括:所述处理机对每N个源节点为所述第一节点分发的权值进行合并后,备份当前得到的所述第一节点的权值,并记录下已经处理过的源节点的ID,所述N为自然数。6.根据权利要求1所述的方法,其特征在于,所述处理机将在所述第一superstep中对所述第一子地图数据中的每一个目标节点分别生成的消息存储到所述分布式文件系统中之后,还包括:所述处理机监测超级步的轮次信息是否发生更新;若所述超级步的轮次信息从所述第一superstep更新为第二superstep,所述处理机在第二superstep中对所述第一子地图数据中的每一个目标节点进行权值分发,针对所述第一子地图数据中的每一个目标节点分别生成消息,并将生成的消息存储到所述分布式文件系统中。7.一种链接分析的计算方法,其特征在于,包括:管理服务器将地图数据划分为多个子地图数据,其中,每个子地图数据包括一个源节点的ID和所述源节点的边所链接的目标节点的ID;所述管理服务器将所述多个子地图数据存储到分布式文件系统;所述管理服务器监测每个处理机是否已经根据所述子地图数据完成第一超级步superstep的计算,所述处理机根据所述子地图数据完成第一超级步superstep的计算包括:所述处理机对所述子地图数据中的每一个目标节点进行权值分发,针对所述子地图数据中的每一个目标节点分别生成消息,所述消息包括所述处理机为所述子地图数据中的每一个目标节点分发的权值。8.根据权利要求7所述的方法,其特征在于,所述方法还包括:若所有处理机已经完成第一superstep的计算,将超级步的轮次信息从所述第一superstep更新为第二superstep,并将更新后的所述超级步的轮次信息存储到所述分布式文件系统中;所述管理服务器监测所述每个处理机是否已经根据所述子地图数据完成第二superstep的计算。9.根据权利要求8所述的方法,其特征在于,所述方法还包括:若所有处理机都已经完成第一superstep的计算,所述管理服务器获取所述每个处理机在完成所述第一superstep的计算后发送的悬挂dangling分数;所述管理服务器将所述每个处理机在完成所述第一superstep的计算后发送的dangling分数进行合并,并计算出所述第一superstep对应的dangling平均分数;所述管理服务器将所述第一superstep对应的dangling平均分数发送给所述每个处理机。10.根据权利要求8或9所述的方法,其特征在于,所述方法还包括:当所述超级步的轮次信息更新完所有superstep后,所述管理服务器监测所述每个处理机是否已经根据所述子地图数据完成所有superstep的计算;若所有处理机都已经完成所有superstep的计算,所述管理服务器获取每个处理机在完成所述所有superstep的计算后发送的dangling分数;所述管理服务器将所述每个处理机在完成所述所有superstep的计算后发送的dangling分数进行合并,并计算出所述所有superstep对应的dangling平均分数;所述管理服务器将所述所有superstep对应的dangling平均分数发送给所述每个处理机。11.根据权利要求7所述的方法,其特征在于,所述方法还包括:所述管理服务器监测所述每个处理机在执行所述第一superstep的计算时的运行状态,所述运行状态指的是所述处理机的计算效率或者是否正常工作的指示;所述管理服务器将计算效率最低或者不正常工作的处理机所执行的计算任务迁移到另一个处理机,并通过计算效率最低或者不正常工作的处理机退出。12.一种处理机,其特征在于,包括:子地图获取模块,用于从分布式文件系统中获取管理服务器预处理生成的第一子地图数据,所述第一子地图数据包括第一节点的身份识别码ID和所述第一节点的边所链接的目标节点...
【专利技术属性】
技术研发人员:蒲若昂,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。