1. 程式人生 > >Spark函式講解:collectAsMap

Spark函式講解:collectAsMap

/**
 * User: 過往記憶
 * Date: 15-03-16
 * Time: 上午09:24
 * bolg: http://www.iteblog.com
 * 本文地址:http://www.iteblog.com/archives/1289
 * 過往記憶部落格,專注於hadoop、hive、spark、shark、flume的技術部落格,大量的乾貨
 * 過往記憶部落格微信公共帳號:iteblog_hadoop
 */
scala> val data = sc.parallelize(List((1, "www"), (1, "iteblog"), (1, "com"), 
    (2, "bbs"), (2, "iteblog"), (2, "com"), (3, "good")))
data: org.apache.spark.rdd.RDD[(Int, String)] =
    ParallelCollectionRDD[26] at parallelize at <console>:12
 
scala> data.collectAsMap
res28: scala.collection.Map[Int,String] = Map(2 -> com, 1 -> com, 3 -> good)

從結果我們可以看出,如果RDD中同一個Key中存在多個Value,那麼後面的Value將會把前面的Value覆蓋,最終得到的結果就是Key唯一,而且對應一個Value。

本文轉載自:http://www.iteblog.com/archives/1289