在齐柏林飞艇笔记本电脑上,使用工作火花/ scala解释器,我正在尝试执行最简单的任务:
println("Hello World");
当我运行它时,输出部分空白(什么都没有!)。
另一方面,当我仅使用
print("Hello World");
没有 ln ,它会打印OK。
任何想法?预先感谢。
答案 0 :(得分:0)
对我来说,这种外观与驱动程序或执行程序中的stdout有关,而与所使用的特定指令无关(因为在这种情况下,这确实很奇怪)。
至少我的齐柏林飞艇实例(我在EMR上)仅是驱动程序标准输出中的打印语句,因此在哪里打印是重要的。
我有一个类似的问题,但这是因为我的打印位于foreach数据框内,因此在执行程序中执行,而不在驱动程序中执行。
例如:
val dataset = spark.read.parquet(...)
println("This will be appeard")
dataset.foreach(println(_))
//you won't see this since the print will happen in the executors
dataset.take(1).foreach(println(_))
//you should see this since happen in the driver after collecting the result
尝试看看您是否正在做类似的事情。