A função de mapa do RDD não está sendo chamada no Scala Spark

Quando eu chamo a função de mapa de um RDD não está sendo aplicada. Funciona como esperado para uma lista scala.collection.immutable.List, mas não para um RDD. Aqui está um código para ilustrar:

val list = List ("a" , "d" , "c" , "d")
list.map(l => {
  println("mapping list")
})

val tm = sc.parallelize(list)
tm.map(m => {
  println("mapping RDD")
})

O resultado do código acima é:

mapping list
mapping list
mapping list
mapping list

Mas observe "mapeamento RDD" não é impresso na tela. Por que isso está ocorrendo?

Isso faz parte de um problema maior, no qual estou tentando preencher um HashMap a partir de um RDD:

  def getTestMap( dist: RDD[(String)]) = {

    var testMap = new java.util.HashMap[String , String]();

    dist.map(m => {
      println("populating map")
      testMap.put(m , m)

    })
    testMap
  }
val testM = getTestMap(tm)
println(testM.get("a"))

Este código imprime nulo

Isso é devido a uma avaliação preguiçosa?

questionAnswers(1)

yourAnswerToTheQuestion