我在Eclipse中调试Spark代码。我面临的问题如下:
RDD
内创建JSON对象,但在logger.info
/ println
中,它
没有在控制台上打印任何内容。logger.info("Record stream count " + rdd.count)
和其他RDD
方法的信息,但不打印我在RDD
中调用的方法的任何内容。.txt
文件读取以在本地设置环境。如有任何其他问题/澄清,请与我们联系。
答案 0 :(得分:0)
关于问题的第一点和第二点, 但首先,您的应用程序是否在群集模式下运行?如果是,请引用http://spark.apache.org/docs/latest/programming-guide.html
但是,在群集模式下,
stdout
的输出被调用 执行者现在正在写入执行者的stdout
,而不是那个 在驱动程序上,驱动程序上的stdout
将不显示这些!打印全部 驱动程序上的元素,可以先使用collect()
方法 将RDD
带到驱动程序节点:rdd.collect().foreach(println)
。
关于第三点,您可以通过在以下
中提供主ID和驱动程序ID来停止Spark应用程序./bin/spark-class org.apache.spark.deploy.Client kill <master url> <driver ID>