如何在HiveContext中使用Spark

时间:2016-03-23 17:36:28

标签: apache-spark apache-spark-sql sbt sbt-assembly

我是spark的新手。我正在尝试在Spark SQL中使用HiveContext来访问窗口函数。但是当我给出它时,

import org.apache.spark.sql.hive.HiveContext

我收到以下错误:

  

错误:对象配置单元不是包org.apache.spark.sql

的成员

我发现了我需要在build.sbt文件中包含以下依赖项的解决方案。

libraryDependencies += "org.apache.spark" %% "spark-hive" % "1.5.2

但我不知道,我应该在spark中找到这个build.sbt文件 我应该换个吗,

/home/cloudera/spark-1.5.2/build/sbt

(或)

/home/cloudera/spark-1.5.2/sbt/sbt

(或)

/home/cloudera/spark-1.5.2/project/plugins.sbt

请帮我在build.sbt文件中添加依赖项。

1 个答案:

答案 0 :(得分:2)

要使用Hive支持构建Spark,不需要对构建定义进行任何更改。只需确保激活所需的配置文件

  • 的Maven

    mvn -Phive -Phive-thriftserver -DskipTests ... clean package
    
  • SBT

    build/sbt -Phive -Phive-thriftserver ... assembly
    

只有在构建自己的项目时才需要添加spark-hive作为依赖项。

此外,请注意,Spark下载页面中提供的预构建(spark-[SPARK-VERSION]-bin-hadoop[HADOOP-VERSION].tgz文件)二进制文件已经使用Hive支持构建。