我在Cloudera项目中的“ /home/cdsw/npi.json”下有一个文件。我尝试使用以下命令来使用PySpark从我的“本地” CDSW项目中进行读取,但是无法通过以下任何命令进行操作。他们都抛出“路径不存在:”错误
npi = sc.read.format("json").load("file:///home/cdsw/npi.json")
npi = sc.read.format("json").load("file:/home/cdsw/npi.json")
npi = sc.read.format("json").load("home/cdsw/npi.json")
答案 0 :(得分:1)
根据本文档,Accessing Data from HDFS
从终端将 文件 从 本地文件 系统复制到HDFS
。使用-put
或-copyFromLocal
。
hdfs dfs -put /home/cdsw/npi.json /destination
其中/destination
在HDFS
中。
然后,读取PySpark
中的文件。
npi = sc.read.format("json").load("/destination/npi.json")
有关更多信息:
put [-f] [-p] [-l] <localsrc> ... <destination>
将文件从本地文件系统复制到fs。如果文件已经存在,则复制失败 存在,除非给出-f标志。