我在ubuntu 16.04系统中设置了HADOOP 2.7.2,HIVE 2.1,SCALA 2.11.8和SPARK 2.0。
Hadoop,hive和spark运行良好。我可以连接到hive cli并使用map-reduce而没有任何问题。
我必须提高order by子句的hive查询性能。
我只能使用Hive cli,并且不能使用spark-shell。
我试图在hive上使用spark作为查询执行引擎
我按照link按照说明操作,我在hive中设置了一些属性:
set hive.execution.engine=spark;
set spark.home=/usr/local/spark
set spark.master=spark://ip:7077
我执行了查询
select count(*) from table_name;
然后它抛出了这个异常:
无法创建spark客户端。
我还将hive客户端连接的超时时间增加到了spark。但是,它没用。
答案 0 :(得分:-3)
首先,我建议您使用shell并按照以下步骤操作:
spark-shell --master yarn-client --driver-memory 512m --executor-memory 512m
你可以跑:
import org.apache.spark.sql.hive.orc._
import org.apache.spark.sql._
val hiveContext = new org.apache.spark.sql.hive.HiveContext(sc)
hiveContext.sql("create table myTable (myField STRING) stored as orc")
如果这样可行,您可以使用hiveContext
执行另一个SQL查询