基于图的数据处理与API通信
1. 基于图的PageRank计算器实现
在图处理系统中,实现PageRank算法时,若采用简单方法让每个死端节点向图中其他每个顶点广播消息,将PR/N的量进行转移,这种方法在处理大型图时无法扩展。因此,我们可以从基于推的方法转向基于拉的方法,利用图处理系统对聚合器的支持。
死端节点无需通过消息广播将其PageRank分数分配给图中其他顶点,而是将其每个节点的贡献(PR/N量)添加到累加器中。在计算PageRank分数时,我们可以扩展PageRank公式,加入一个额外项来考虑这个剩余的PageRank。
以下是PageRank计算器的API定义:
type Calculator struct {
    g   *bspgraph.Graph
    cfg Config
    executorFactory bspgraph.ExecutorFactory
}
  executorFactory  用于创建新的  Executor  实例。默认情况下,  Calculator  构造函数使用  bspgraph.NewExecutor  作为工厂实现,但用户可以使用  SetExecutorFactory  方法进行覆盖: 
func (c *Calculator) SetExecutorFactory(factory bspgraph.Execu 
                       
                           
                         
                             
                             
                           
                           
                             超级会员免费看
超级会员免费看
                                         
                   订阅专栏 解锁全文
                订阅专栏 解锁全文
                 
             
       
           
                 
                 
                 
                 
                 
                
               
                 
                 
                 
                 
                
               
                 
                 扫一扫
扫一扫
                     
              
             
                  
 被折叠的  条评论
		 为什么被折叠?
被折叠的  条评论
		 为什么被折叠?
		 
		  到【灌水乐园】发言
到【灌水乐园】发言                                
		 
		 
    
   
    
   
             
            


 
            