实例化’org.apache.spark.sql.hive.HiveSessionState’时出现SparkR错误

我从本教程 https://www.linkedin.com/pulse/setting-up-sparkr-windows-machine-ramabhadran-kapistalam开始在我的Windows 8.1中安装SparkR.我结束了它,所以我猜它实现得很好.

问题是当我尝试使用简单的数据框运行示例时:

Error in handleErrors(returnStatus, conn) : 
  java.lang.IllegalArgumentException: Error while instantiating 'org.apache.spark.sql.hive.HiveSessionState':
    at org.apache.spark.sql.SparkSession$.org$apache$spark$sql$SparkSession$$reflect(SparkSession.scala:981)
    at org.apache.spark.sql.SparkSession.sessionState$lzycompute(SparkSession.scala:110)
    at org.apache.spark.sql.SparkSession.sessionState(SparkSession.scala:109)
    at org.apache.spark.sql.Dataset$.ofRows(Dataset.scala:62)
    at org.apache.spark.sql.SparkSession.createDataFrame(SparkSession.scala:552)
    at org.apache.spark.sql.SparkSession.createDataFrame(SparkSession.scala:307)
    at org.apache.spark.sql.api.r.SQLUtils$.createDF(SQLUtils.scala:139)
    at org.apache.spark.sql.api.r.SQLUtils.createDF(SQLUtils.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at

这是我在R中的代码:

 Sys.setenv(SPARK_HOME = "C:/Spark/spark-2.1.1-bin-hadoop2.7")
 .libPaths(c(file.path(Sys.getenv("SPARK_HOME"),"R","lib"), .libPaths()))
 sparkR.session(appName = "SparkR-DataFrame-example")
 df <- as.DataFrame(faithful)

我看到了一个解决方案,我必须通过添加以下内容来配置sparkr会话:

sparkR.session(master = "local[*]", sparkConfig = list(spark.driver.memory = "1g", spark.sql.warehouse.dir = "file:///somelocaldirectory"))

我尝试用数据文件编辑spark.sql.warehouse.dir,但错误仍然存​​在

最佳答案 我有完全相同的问题,启动R-studio或R作为管理员解决了这个问题.

以管理员身份启动,右键单击R-studio或R并选择以管理员身份运行,然后您的命令应该可以正常工作.

点赞