spark上的hive2.1.1-我应该使用哪个版本的spark

rqcrx0a6  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(530)

我正在ubuntu16.04上运行hive2.1.1和hadoop2.7.3。
据《星火Hive:入门》报道
安装/生成兼容版本。hiveroot pom.xml定义了构建/测试spark的版本。
我检查了pom.xml,它显示spark版本是1.6.0。

<spark.version>1.6.0</spark.version>

但《星火Hive:入门》也说明了这一点
spark 2.0.0之前的版本:./make-distribution.sh--name“hadoop2 without-hive”--tgz“-pyarn,提供hadoop,提供hadoop-2.4,提供parquet”
从spark 2.0.0开始:./dev/make-distribution.sh--name“hadoop2 without-hive”--tgz“-pyarn,提供了hadoop,提供了hadoop-2.7,提供了parquet”
所以现在我很困惑,因为我运行的是hadoop2.7.3。我必须把hadoop降到2.4吗?
我应该使用哪个版本的spark?1.6.0还是2.0.0?
谢谢您!

fbcarpbf

fbcarpbf1#

当前版本的spark 2.x与hive 2.1和hadoop 2.7不兼容,存在一个主要错误:
javasparklistener不可用,配置单元在执行时崩溃
https://issues.apache.org/jira/browse/spark-17563
您可以尝试使用hadoop 2.7构建hive 2.1,使用spark 1.6构建:

./make-distribution.sh --name "hadoop2-without-hive" --tgz "-Pyarn,hadoop-provided,hadoop-2.7,parquet-provided"

如果查看2.0之后的命令,区别在于./make distribution在/dev文件夹中。
如果它不适用于hadoop 2.7.x,我可以向您确认,我已经能够使用hadoop 2.6成功构建它,方法是:

./make-distribution.sh --name "hadoop2-without-hive" --tgz "-Pyarn,hadoop-provided,hadoop-2.6,parquet-provided"

对于scala 2.10.5

bnlyeluc

bnlyeluc2#

我目前正在使用spark2.0.2和hadoop2.7.3以及hive2.1,运行良好。我认为hive将支持spark1.6.x和2.x两个版本,但我建议您使用spark2.x,因为它是最新版本。
关于为什么要使用spark 2.x的一些动机链接https://docs.cloud.databricks.com/docs/latest/sample_applications/04%20apache%20spark%202.0%20examples/03%20performance%20apache%20(Spark%202.0%20vs%201.6).html
apache spark对apache spark 2

相关问题