这里写自定义目录标题
Hibench版本可能导致运行不成功
前言
下面列出我所用的Hibench,Hadoop,Spark的版本以及不成功的课题
名称 | 版本 |
---|---|
Hibench | bf390d2e6 |
Hadoop | 3.1.0 |
Spark | 3.0.0 |
出问题的课题
Sql/
问题原因
Hibench在做课题的时候,只按照Hadoop和Spark的文档要求在pom.xml里面加入引用,至于是否真的可以,它不管。
对于sql类课题,可以执行prepare,上传数据到hdfs,但是在做hadoop的时候会报82错误。
其原因是在构建Hibench的时候,默认下载的是hive-3.0.0版本,这个版本的hive的lib里面缺少failureaccess-1.0.1.jar
导致,到maven的中央仓库下载failureaccess-1.0.1.jar
放入/opt/software/Hibench/hadoopbench/sql/target/apache-hive-3.0.0-bin/lib
中即可
这还好,对于sparkbench,根本就做不了,因为它根本没有随着spark的版本变化更新代码,例如join课题中
package com.intel.hibench.sparkbench.sql
import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.sql.hive.HiveContext
/*
* ported from HiBench's hive bench
*/
object ScalaSparkSQLBench{
def main(args: Array[String]){
if (args.length < 2){
System.err.println(
s"Usage: $ScalaSparkSQLBench <workload name> <SQL sciprt file>"
)
System.exit(1)
}
spark-3.0根本就不支持HiveContext
于是,我自以为可以通过改代码,重新编译的方式,最后又是其他的错误,我放弃了,算了,于是,我用以下对应版本的测试集测试,通过!
解决方案
名称 | 版本 |
---|---|
Hibench | commit id: 1f7aebb |
Hadoop | 2.7.3 |
Spark | 2.1.0 |
麻烦测试做做好再publish,好伐?