我试图读取我的hdfs中的文件。这里显示了我的hadoop文件结构。从pyspark读取hdfs中的文件
[email protected]:/usr/local/spark/bin$ hadoop fs -ls -R/
drwxr-xr-x - hduser supergroup 0 2016-03-06 17:28 /inputFiles
drwxr-xr-x - hduser supergroup 0 2016-03-06 17:31 /inputFiles/CountOfMonteCristo
-rw-r--r-- 1 hduser supergroup 2685300 2016-03-06 17:31 /inputFiles/CountOfMonteCristo/BookText.txt
这里是我的pyspark代码:
from pyspark import SparkContext, SparkConf
conf = SparkConf().setAppName("myFirstApp").setMaster("local")
sc = SparkContext(conf=conf)
textFile = sc.textFile("hdfs://inputFiles/CountOfMonteCristo/BookText.txt")
textFile.first()
我得到的错误是:
Py4JJavaError: An error occurred while calling o64.partitions.
: java.lang.IllegalArgumentException: java.net.UnknownHostException: inputFiles
这是因为我错误地设置了我的sparkContext?我正在通过虚拟机在Ubuntu 14.04虚拟机中运行它。
我不知道我在做什么错在这里....
有没有办法设置名称节点主机,所以它不是硬编码在python文件中?我们如何才能最好地参与其中?也许使用某种可以在多个应用程序之间共享的配置文件? –