0

我有以下设置: - HDFS - Hive - 远程 Hive Metastore(和 Metastore 数据库) - Apache Spark(从https://archive.apache.org/dist/spark/spark-2.4 下载和安装。 3/ )

我可以按预期使用 Hive,创建表 - 从 HDFS 读取数据等等。但是,无法通过 Hive 支持运行 spark。每当我跑步val sparkSession = SparkSession.builder().appName("MyApp").enableHiveSupport().getOrCreate()

我明白了java.lang.IllegalArgumentException: Unable to instantiate SparkSession with Hive support because Hive classes are not found.

Hive 类在路径中,我已经复制了 hive-site.xml、core-site.xml 和 hdfs-site.xml

我是否需要在配置单元支持的情况下构建火花(如此处所述:https ://spark.apache.org/docs/latest/building-spark.html#building-with-hive-and-jdbc-support )才能获得火花与蜂巢一起工作?

是否有可用的带有 Hive 支持 tar 的 Spark,我可以提取它而不是从源代码构建?

谢谢!

4

1 回答 1

2

你在什么环境下运行spark?简单的答案是让任何可用的打包工具完成所有繁重的工作。例如,如果你在 osx 上使用 brew 来安装所有东西。如果您在 maven/sbt 项目中,请引入 spark-hive 包等。

我需要在蜂巢支持下建立火花吗

如果您从源代码手动构建火花,是的。这是一个示例命令。(但很可能你不必这样做)

./build/mvn -Pyarn -Phive -Phive-thriftserver -DskipTests 清洁包

http://spark.apache.org/docs/latest/building-spark.html#building-with-hive-and-jdbc-support

如果您缺课,spark 会在内部检查 hive-exec-1.2.1.spark.jar 中是否存在“org.apache.hadoop.hive.conf.HiveConf”。请注意,这是一个定制版本的 hive,旨在与 spark 很好地配合使用。

https://mvnrepository.com/artifact/org.spark-project.hive/hive-exec/1.2.1.spark

于 2019-07-31T02:12:35.513 回答