我对火花相对较新,我想知道是否有人知道RDD转换所需的总时间。目前,我的日志仅显示该特定RDD消耗的内存,并且没有显示其转换所需的时间。
例如,当我发出命令时,val Text = sc.textFile(" README.md")
我在日志中收到以下信息,
14/09/09 12:15:38 INFO MemoryStore: ensureFreeSpace(32856) called with curMem=0, maxMem=311387750
14/09/09 12:15:38 INFO MemoryStore: Block broadcast_0 stored as values to memory (estimated size 32.1 KB, free 296.9 MB)
Text: org.apache.spark.rdd.RDD[String] = MappedRDD[1] at textFile at :12
有没有办法为此花时间?
提前致谢。
答案 0 :(得分:2)
当您创建RDD时,您只是声明一个对象,所花费的时间将是毫秒。同样地,对于transformations,例如map,filter等。在您执行action计数,获取,收集等操作之前,实际上不会运行任务。
当您调用操作时,日志将包含计时数据。
scala> sc.textFile("filename").count
...
14/09/09 12:38:43 INFO scheduler.DAGScheduler: Stage 0 (count at <console>:13) finished in 0.984 s
14/09/09 12:38:43 INFO spark.SparkContext: Job finished: count at <console>:13, took 1.070632705 s
res1: Long = 380868