Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows上的SparkR-Spark SQL不是使用配置单元支持构建的_R_Apache Spark_Hive_Sparkr - Fatal编程技术网

Windows上的SparkR-Spark SQL不是使用配置单元支持构建的

Windows上的SparkR-Spark SQL不是使用配置单元支持构建的,r,apache-spark,hive,sparkr,R,Apache Spark,Hive,Sparkr,我正在尝试在我的机器中使用Spark localy,我能够在以下位置复制教程: 但是,当我尝试使用配置单元时,会出现以下错误: 值[3L]中出错:Spark SQL未使用配置单元支持构建 守则: ## Set Environment variables Sys.setenv(SPARK_HOME = 'F:/Spark_build') # Set the library Path .libPaths(c(file.path(Sys.getenv('SPARK_HOME'), 'R','lib'

我正在尝试在我的机器中使用Spark localy,我能够在以下位置复制教程:

但是,当我尝试使用配置单元时,会出现以下错误:

值[3L]中出错:Spark SQL未使用配置单元支持构建

守则:

## Set Environment variables
Sys.setenv(SPARK_HOME = 'F:/Spark_build')
# Set the library Path
.libPaths(c(file.path(Sys.getenv('SPARK_HOME'), 'R','lib'),.libPaths()))

# load  SparkR
library(SparkR)

sc <- sparkR.init()
sqlContext <- sparkRHive.init(sc)

sparkR.stop()

但是,错误仍然存在

如果您只是按照本教程的说明进行操作,那么您根本没有安装配置单元(从命令行尝试
Hive
)。。。我发现对于Spark初学者来说,这是一个常见的困惑点:“为Hadoop预构建”并不意味着它需要Hadoop,更不用说它包括Hadoop(它没有),Hive也有同样的问题。

我们有同样的问题,但我们不能简单地转向linux。过了一会儿,我们找到了这个页面,并提出了以下解决方案:

  • 创建名为hive-site.xml的文件并在其中写入:

    
    hive.exec.scratchdir
    C:\tmp\hive
    为蜂巢作业预留临时空间
    

  • 将环境变量HADOOP_CONF_DIR设置为hive-site.xml目录
  • 设置环境变量HADOOP_HOME,如中所述
  • 运行
    winutils.exe chmod-R 777 C:\tmp\hive

这解决了我们的windows机器上的问题,我们现在可以在支持hive的情况下运行SparkR。

你说得对……我放弃了在windows上运行SparkR的尝试。这花了我几个小时,但它正在我的linux虚拟机上运行,这是您可以做出的最佳选择:-)
mvn -Pyarn -Phadoop-2.6 -Dhadoop.version=2.6.0 -Phive -Phive-thriftserver -DskipTests clean package.