Spark Read.json 找不到文件
Posted
技术标签:
【中文标题】Spark Read.json 找不到文件【英文标题】:Spark Read.json cant find file 【发布时间】:2016-01-16 20:06:11 【问题描述】:嘿,我在 AWS 上有 1 个主节点和 1 个从节点独立 Spark 集群。我的主目录有一个文件夹,名为 ~/Notebooks。这是我在浏览器中启动 jupyter 笔记本并连接 jupyter。我还有一个名为 people.json 的文件(简单的 json 文件)。
我尝试运行这段代码
from pyspark import SparkContext, SparkConf
from pyspark.sql import SQLContext
conf = SparkConf().setAppName('Practice').setMaster('spark://ip-172-31-2-186:7077')
sc = SparkContext(conf=conf)
sqlContext = SQLContext(sc)
df = sqlContext.read.json("people.json")
当我运行最后一行时出现此错误。我不明白文件就在那里……有什么想法吗?-
Py4JJavaError:调用 o238.json 时出错。 :org.apache.spark.SparkException:作业因阶段失败而中止:阶段 4.0 中的任务 1 失败 4 次,最近一次失败:阶段 4.0 中丢失任务 1.3(TID 37,ip-172-31-7-160.us -west-2.compute.internal):java.io.FileNotFoundException:文件文件:/home/ubuntu/Notebooks/people.json 不存在
【问题讨论】:
你确定这个文件也在所有工作节点上吗? 哦,废话,我没有意识到它需要在工作节点上......那么它甚至需要在主节点上吗? 【参考方案1】:确保文件在工作节点上可用。最好的方法是使用共享文件系统(NFS、HDFS)。阅读External Datasets documentation
【讨论】:
以上是关于Spark Read.json 找不到文件的主要内容,如果未能解决你的问题,请参考以下文章