问题描述
遇到的问题如上图所示:我在spark中读取的json文件明明是集群本地的文件,可是他偏偏就自作聪明去了hdfs上面去找我的文件!!那肯定会报错啊!!!我hdfs上怎么可能有这个文件嘛!!!
原因:我在spark中的运行环境配置了yarn关联,如下所示:
修改了spark-env.sh,添加如下配置:
YARN_CONF_DIR=/opt/module/hadoop-2.7.2/etc/hadoop
那么Spark会把路径自动变成hdfs的路径的,就会去hdfs上面找!!!
解决办法
要在你的路径前面叫上file:///
如此下图所示:
结果就出来啦!!真不错呢!!!