当前位置: 首页 > 工具软件 > Hibench > 使用案例 >

Hibench版本可能导致运行不成功

马天逸
2023-12-01

Hibench版本可能导致运行不成功

前言

下面列出我所用的Hibench,Hadoop,Spark的版本以及不成功的课题

名称版本
Hibenchbf390d2e6
Hadoop3.1.0
Spark3.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

于是,我自以为可以通过改代码,重新编译的方式,最后又是其他的错误,我放弃了,算了,于是,我用以下对应版本的测试集测试,通过!

解决方案

名称版本
Hibenchcommit id: 1f7aebb
Hadoop2.7.3
Spark2.1.0

麻烦测试做做好再publish,好伐?

 类似资料: