You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Ankur Dave (JIRA)" <ji...@apache.org> on 2014/09/03 23:46:52 UTC

[jira] [Commented] (SPARK-3206) Error in PageRank values

    [ https://issues.apache.org/jira/browse/SPARK-3206?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14120525#comment-14120525 ] 

Ankur Dave commented on SPARK-3206:
-----------------------------------

I think the `run` method is incorrect due to a bug in Pregel. I wrote a standalone (non-Pregel) version of PageRank that provides the functionality of `run` without using Pregel: https://github.com/ankurdave/spark/blob/low-level-PageRank/graphx/src/main/scala/org/apache/spark/graphx/impl/GraphImpl.scala#L274

I'd like to run that and check the results against these ones when I get a chance.

> Error in PageRank values
> ------------------------
>
>                 Key: SPARK-3206
>                 URL: https://issues.apache.org/jira/browse/SPARK-3206
>             Project: Spark
>          Issue Type: Bug
>          Components: GraphX
>    Affects Versions: 1.0.2
>         Environment: UNIX with Hadoop
>            Reporter: Peter Fontana
>
> I have found a small example where the PageRank values using run and runUntilConvergence differ quite a bit.
> I am running the Pagerank module on the following graph:
> Edge Table:
> || Node1 || Node2 ||
> |1 | 2 |
> |1 |	3|
> |3 |	2|
> |3 |	4|
> |5 |	3|
> |6 |	7|
> |7 |	8|
> |8 |	9|
> |9 |	7|
> Node Table (note the extra node):
> || NodeID  || NodeName  ||
> |a |	1|
> |b |	2|
> |c |	3|
> |d |	4|
> |e |	5|
> |f |	6|
> |g |	7|
> |h |	8|
> |i |	9|
> |j.longaddress.com |	10|
> with a default resetProb of 0.15.
> When I compute the pageRank with runUntilConvergence, running 
> {{val ranks = PageRank.runUntilConvergence(graph,0.0001).vertices}}
> I get the ranks
> (4,0.29503124999999997)
> (1,0.15)
> (6,0.15)
> (3,0.34124999999999994)
> (7,1.3299054047985106)
> (9,1.2381240056453071)
> (8,1.2803346052504254)
> (10,0.15)
> (5,0.15)
> (2,0.35878124999999994)
> However, when I run page Rank with the run() method, running  
> {{val ranksI = PageRank.run(graph,100).vertices}} 
> I get the page ranks
> (4,0.29503124999999997)
> (1,0.15)
> (6,0.15)
> (3,0.34124999999999994)
> (7,0.9999999387662847)
> (9,0.9999999256447741)
> (8,0.9999999256447741)
> (10,0.15)
> (5,0.15)
> (2,0.29503124999999997)
> These are quite different, leading me to suspect that one of the PageRank methods is incorrect. I have examined the source, but I do not know what the correct fix is, or which set of values is correct.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org