Hadoop 如何配置配置配置单元以使用Spark?

Hadoop 如何配置配置配置单元以使用Spark?,hadoop,mapreduce,hive,apache-spark,Hadoop,Mapreduce,Hive,Apache Spark,我在Spark上使用Hive时遇到问题。我已经通过Ambari在CentOS 6.5上安装了单节点HDP2.1(Hadoop 2.4)。我试图在Spark上运行Hive,因此我使用了以下说明: 我已经下载了“为Hadoop 2.4预构建”版本的Spark,这是我在ApacheSpark官方网站上找到的。因此,我从大师开始: ./spark-class org.apache.spark.deploy.master.Master 然后,工人会: ./spark-class org.apache.

我在Spark上使用Hive时遇到问题。我已经通过Ambari在CentOS 6.5上安装了单节点HDP2.1(Hadoop 2.4)。我试图在Spark上运行Hive,因此我使用了以下说明:

我已经下载了“为Hadoop 2.4预构建”版本的Spark,这是我在ApacheSpark官方网站上找到的。因此,我从大师开始:

./spark-class org.apache.spark.deploy.master.Master
然后,工人会:

./spark-class org.apache.spark.deploy.worker.Worker spark://hadoop.hortonworks:7077
然后,我启动Hive时出现以下提示:

hive –-auxpath /SharedFiles/spark-1.0.1-bin-hadoop2.4/lib/spark-assembly-1.1.0-hadoop2.4.0.jar
set hive.execution.engine=spark;,
然后,根据说明,我必须使用以下提示将hive的执行引擎更改为spark:

hive –-auxpath /SharedFiles/spark-1.0.1-bin-hadoop2.4/lib/spark-assembly-1.1.0-hadoop2.4.0.jar
set hive.execution.engine=spark;,
结果是:

Query returned non-zero code: 1, cause: 'SET hive.execution.engine=spark' FAILED in validation : Invalid value.. expects one of [mr, tez].
因此,如果我尝试启动一个简单的配置单元查询,我可以在hadoop.hortonwork:8088上看到启动的作业是一个MapReduce作业

现在我的问题是:如何更改Hive的执行引擎,使Hive使用Spark而不是MapReduce?还有其他方法可以改变吗?(我已经尝试通过ambari和hive site.xml对其进行更改)


请尝试此命令,它将正常运行。

在配置单元配置属性中更改如下

$HIVE\u HOME/conf/HIVE site.xml

<property>
  <name>hive.execution.engine</name>
  <value>spark</value>
  <description>
    Chooses execution engine.
  </description>
</property>

蜂巢执行引擎
火花
选择执行引擎。
在hive>conf>hive-site.xml中 将hive.execution.engine的值设置为spark

  </property> 
    <name>hive.execution.engine</name>
    <value>spark</value>
  </property>

蜂巢执行引擎
火花

设置hive.execution.engine=spark;这在Hive 1.1+以后的版本中引入。我认为您的hive版本比hive 1.1旧


资源:

请确认您是否遵循了“配置配置单元”下的说明,尤其是第1项?(基本上,你需要下载“星火上的蜂巢”开发分支并自己构建。)这是最前沿的东西,一个普通的现成蜂巢还不支持它。星火上的蜂巢仍在进行中。。。如果你想做什么严肃的事情,我强烈反对你。谢谢你的回答。这可能是有关Spark上配置单元的其他错误消息的原因。我不小心跳过了第一步。我想我会在我的服务器上安装一个新的Hadoop,而不使用Hortonworks或Cloudera。应该是:hive.execution.engine spark选择执行引擎。