spark/hadoop在aws emr上找不到文件

13z8s7eq  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(376)

我正在尝试使用pythonspark库读取amazonemr上的文本文件。该文件位于主目录(/home/hadoop/wet0)中,但是spark似乎找不到它。
有问题的行:

lines = spark.read.text(sys.argv[1]).rdd.map(lambda r: r[0])

错误:

pyspark.sql.utils.AnalysisException: u'Path does not exist: hdfs://ip-172-31-19-121.us-west-2.compute.internal:8020/user/hadoop/wet0;'

文件必须在特定目录中吗?我在美国焊接学会的网站上找不到这方面的信息。

vohkndzv

vohkndzv1#

我不知道是否只有我,但当我试图解决上述建议的问题,我得到了一个错误“路径不存在”在我的电子病历。我只是在用户之前加了一个“/”就成功了。
文件:///user/hadoop/wet0
谢谢你的帮助!

t3psigkw

t3psigkw2#

如果它在本地文件系统中,那么url应该是file://user/hadoop/wet0 如果它在hdfs中,那应该是一个有效的路径。使用hadoop fs命令查看
e、 g:hadoopfs-ls/home/hadoop
你说它在“/home/hadoop”中,但是错误的路径是“/user/hadoop”。确保没有在命令行中使用~因为bash会在spark看到它之前进行扩展。最好使用完整路径/home/hadoop

相关问题