我正在尝试使用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;'
文件必须在特定目录中吗?我在美国焊接学会的网站上找不到这方面的信息。
2条答案
按热度按时间vohkndzv1#
我不知道是否只有我,但当我试图解决上述建议的问题,我得到了一个错误“路径不存在”在我的电子病历。我只是在用户之前加了一个“/”就成功了。
文件:///user/hadoop/wet0
谢谢你的帮助!
t3psigkw2#
如果它在本地文件系统中,那么url应该是file://user/hadoop/wet0 如果它在hdfs中,那应该是一个有效的路径。使用hadoop fs命令查看
e、 g:hadoopfs-ls/home/hadoop
你说它在“/home/hadoop”中,但是错误的路径是“/user/hadoop”。确保没有在命令行中使用~因为bash会在spark看到它之前进行扩展。最好使用完整路径/home/hadoop