当我在spark中输入以下命令时:
textFile = sc.textFile("README.md")
textFile.take(3)
它会输出:
[u'# Apache Spark', u'', u'Spark is a fast and general cluster computing system for Big Data. It provides']
但是,当我想使用spark-submit
加载python
文件时:
from pyspark import SparkContext
logFile = "/home/sydridgm/Downloads/spark-1.6.1-bin-hadoop2.4/README.md"
sc = SparkContext("local", "Simple App")
logData = sc.textFile(logFile).cache()
logData.take(3)
它不会输出任何东西。我有点困惑。有人能解释一下吗?提前谢谢。
答案 0 :(得分:2)
关于这一点,shell环境和正常应用程序之间的区别在于shell总是在标准输出上打印出命令的结果。例如,如果您创建RDD,您将看到PythonRDD,当您使用take时,它将打印take的结果。
当您提交申请时,您需要自己打印出来:
advString_stream