Window 10下spark shell使用sparksql 时的 “entry in command string: null ls -F C:\tmp\hive”问题解决

很多情况下,我们在window平台下用spark shell来进行交互式开发和测试,当在使用sparksql时,比如如下命令:

val myDF = spark.sql("select * from mytable")

可能会遇到下面的问题:

 

 

 

 

这是因为,spark在window平台读取hdfs时,需要hadoop的支持,因此需要先安装winutils.exe,winutils.exe不是hadoop的安装包组件,可以从下面地址下载:

winutils下载

 

下载完后,将相应版本的 winutils.exe拷贝到SPARK_HOME\bin目录,然后打开命令行窗口,执行下面命令更新目录权限:

更改目录权限
winutils chmod 777 c:\tmp\hive

查看目录权限
winutils ls c:\tmp\hive

 

重新开启spark-shell,执行sparksql语句,恢复正常

posted @ 2020-04-10 17:10  黎明踏浪号  阅读(1195)  评论(1编辑  收藏  举报