Spark和Scala當(dāng)中的collect方法的用法和例子

馬克- to-win:馬克 java社區(qū):防盜版實名手機(jī)尾號: 73203。
    /*馬克-to-win @ 馬克java社區(qū):collect: 收集一個彈性分布式數(shù)據(jù)集的所有元素到一個數(shù)組中,這樣便于我們觀察,畢竟分布式數(shù)據(jù)集比較抽象。Spark的collect方法,是Action類型的一個算子,會從遠(yuǎn)程集群拉取數(shù)據(jù)到driver端。最后,將大量數(shù)據(jù)
 匯集到一個driver節(jié)點上,將數(shù)據(jù)用數(shù)組存放,占用了jvm堆內(nèi)存,非常用意造成內(nèi)存溢出,只用作小型數(shù)據(jù)的觀察。*/
    val arr = res.collect();
    println("arr(0) is " + arr(0) + " arr(2) is " + arr(2) + " arr(4) is " + arr(4));
  }
}




輸出結(jié)果:

map 用法  is 1,16,9,49,25
filter 用法 1,4,3
map2 用法  is 馬克-to-win @ 馬克java社區(qū):2,5,4,8,6
filter2 用法 馬克-to-win @ 馬克java社區(qū):4,7,5
arr(0) is 1 arr(2) is 3 arr(4) is 5
sum is 55
reduceByKey 用法 (1,8),(3,12)