《spark机器学习班》第一课 PageRank代码提问

var links = sc.parallelize(Array(('A',Array(‘B','C','D')),('B',Array('A','D')), ('D',Array('B','C'))),2)
var links = links.map(x=>(x._1, x._2)).cache()
var ranks = sc.parallelize(Array(('A',1.0),('B',1.0),('C',1.0).('D',1.0)),2)
for(i <- 1 to ITERATIONS){
    val contribs = links.join(ranks,2)
    val flatMapRDD = contribs.flatMap{case(url,(links,rank))=>links.map(dest=>(dest,rank/links.size))}
    val reduceByKeyRDD = flatMapRDD.reduceByKey(_+_,2)
    val ranks = reduceByKeyRDD.mapValues(0.15+0.85*_)
}


以上是本课程给出的代码,问题是:

case(url,(links,rank)和dest=>(dest,rank/links.size)

这啥啊?百度也百度不到,看也看不懂Orz。

dest是啥意思?case和url关键字又代表什么,有什么作用,可以详细点吗?

感觉我少了什么基础?

以上。
已邀请:

要回复问题请先登录注册

返回顶部