首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R中的spark-warehouse错误

R中的spark-warehouse错误
EN

Stack Overflow用户
提问于 2016-10-18 22:30:20
回答 1查看 442关注 0票数 0

我已经在我的Windows10 PC上安装了spark spark-2.0.0-bin-hadoop2.7,并且我想在R中使用SparkR包。但是当我运行以下示例代码时:

代码语言:javascript
复制
library(SparkR)

# Initialize SparkSession
sparkR.session(appName = "SparkR-DataFrame-example")

# Create a simple local data.frame
localDF <- data.frame(name=c("John", "Smith", "Sarah"), age=c(19, 23, 18))

# Convert local data frame to a SparkDataFrame
df <- createDataFrame(localDF)

它抛出一个异常:

代码语言:javascript
复制
Error in invokeJava(isStatic = TRUE, className, methodName, ...) :
java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: file:C:/Users/Louagyd/Desktop/EDU%20%202016-2017/Data%20Analysis/spark-warehouse
at org.apache.hadoop.fs.Path.initialize(Path.java:205)
at org.apache.hadoop.fs.Path.<init>(Path.java:171)
at org.apache.spark.sql.catalyst.catalog.SessionCatalog.makeQualifiedPath(SessionCatalog.scala:114)     
at org.apache.spark.sql.catalyst.catalog.SessionCatalog.createDatabase(SessionCatalog.scala:145)    
at org.apache.spark.sql.catalyst.catalog.SessionCatalog.<init>(SessionCatalog.scala:89)     
at org.apache.spark.sql.internal.SessionState.catalog$lzycompute(SessionState.scala:95)     
at org.apache.spark.sql.internal.SessionState.catalog(SessionState.scala:95)    at org.apache.spark.sql.internal.SessionState$$anon$1.<init>(SessionState.scala:112)    
at org.apache.spark.sql.internal.SessionState.analyzer$lzycompute(SessionState.scala:112)   
at org.apache.spark.sql.internal.SessionState.analyzer(Session

有什么办法解决这个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2016-11-07 11:18:45

我也收到了同样的错误,但在网络上没有帮助。然而,我通过以下步骤解决了这个问题:

准备工作

  1. here下载winutils.exe并安装。
  2. 创建名为"C:\tmp\hive“的文件夹。此文件夹将用作仓库目录。
  3. 在命令提示符(cmd)中运行winutils.exe chmod 777 \tmp\hive。确保winutils位于您的类路径中。如果没有,请将其添加到系统中安装SPARK的环境variables.
  4. Ensure中。在我的例子中,它安装在"C:/spark-2.0.0-bin-hadoop2.7“文件夹下。

Main

项目打开后在任何目录下创建一个新项目(例如,"C:/home/Project/SparkR")

  • In RStudio的脚本窗口,按相同的顺序运行以下命令:Set Working Dir -创建R项目的同一文件夹setwd(“C://
  1. /RStudio”)# Load Env variable SPARK_HOME,如果还没有加载的话)。#如果Window的环境变量中已经设置了这个变量,如果(nchar(Sys.getenv("SPARK_HOME")) < 1) { Sys.setenv(SPARK_HOME = "C:/spark-2.0.0-bin-hadoop2.7") }#加载SparkR库(SparkR,lib.loc = c(file.path(Sys.getenv("SPARK_HOME"),"R",“lib”)#创建一个配置变量映射内存和运行时引用的仓库目录,则不需要执行此步骤。sparkConf = list(spark.driver.memory = "2g",spark.sql.warehouse.dir="C:/tmp") #创建本地会话变量master( SparkR =“sparkR.session*”,sparkConfig = sparkConf) #从SparkR库中加载现有数据DF <- as.DataFrame(忠实)#检查已加载的数据头(DF)

通过以上步骤,我可以成功地加载数据并查看它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40111015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档