windows idea本地执行spark sql避坑
最佳答案 问答题库338位专家为你答疑解惑
本地安装了IDEA,并配置好了相关POM,可以在本机使用sparkSession连接数据,并在数据库执行sql,在idea展示执行结果。
但是,如果将数据的查询结果建立到spark中,再展示,就会报错
Error while running command to get file permissions : java.io.IOException: (null) entry in command string: null ls -F D:\tmp\hive
println(sql)//sql = s"(select * from mtl_system_items_b where rownum < 10) b"dbConf += ("dbtable" -> sql)val df2 = spark.read.format("jdbc").options(dbConf).load()df2.showdf2.createOrReplaceTempView("boms")print("show results")spark.sql("select * from boms").show()
在df2.show的时候,是可以正常展示数据的
但是使用createOrReplaceTempView后,使用spark.sql("").show(),展示数据就会报错。
原因:
经过网上各种查询,有个靠谱的解释是本机没有配置hadoop,导致idea在执行的时候报错
解决方法:
1.找同事要了hadoop文件(也可以在网上下载)
2.将hadoop文件解压缩,放到一个位置,哪里都好,我是放到了idea的文件夹下
3. 修改环境变量,建立HADOOP_HOME,并且在path配置文件下吧HADOOP_HOME文件加进去
4. 修改hadoop下的jdk文件路径,修改的时候注意跟进参考文档中修改,否则执行会报错
5. 重启电脑,必须重启电脑
6. 在idea执行程序,还是会报错,但是错误变了,网上的解释是,缺少文件winutils.exe,从以下地址下载,下载完成后,放到hadoop/bin下面
https://raw.githubusercontent.com/steveloughran/winutils/master/hadoop-2.6.0/bin/winutils.exe
7. 重启idea,执行代码,还是报错,有点头晕,一狠心,把D:tmp文件夹给删掉了,在执行idea的程序,正常输出了
具体操作参考:
hadoop-2.7.3 在windows环境下安装(无需Cygwin)-CSDN博客
winutils.exe的参考文档
spark代码连接hive_本地spark连接hive相关问题总结-CSDN博客
99%的人还看了
相似问题
- conda创建pytorch环境报错
- Python通过selenium调用IE11浏览器报错解决方法
- kafka本地安装报错
- 【BUG】第一次创建vue3+vite项目启动报错Error: Cannot find module ‘worker_threads‘
- git 构建报错
- Docker build报错总结,版本过新大避雷!
- Mongodb3.4升级高版本mongoTemplate.executeCommand报错The cursor option is required
- duplicate复制数据库单个数据文件复制失败报错rman-03009 ora-03113
- 安装第三方包报错 error: Microsoft Visual C++ 14.0 or greater is required——解决办法
- 邮件|gitpushgithub报错|Lombok注解
猜你感兴趣
版权申明
本文"windows idea本地执行spark sql避坑":http://eshow365.cn/6-32749-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!