今天在写spark代码的时候,在将rdd的结果保存到hdfs上时,
rdd.saveAsTextFile("/data/spark")
出现了
java.io.IOException: Mkdirs failed to create
这个错误,个人一直认为这样就应该写到hdfs上了,但是一执行就报错,最后才发现,这种写法是写到本地了,如果要写到hdfs上要写上全路径
rdd.saveAsTextFile("hdfs://192.168.23.21:9000/data/spark")
这样就行了,总结一下
saveTextFile是将RDD保存到文件,本地模式时保存在本地文件,集群模式指如果在Hadoop基础上则保存在HDFS上,由于我用的是本地模式所以会报以上的错误,如果用的是集群就可以直接那样写了。