hive on spark jar包缓存问题

允许Yarn在节点上缓存必要的spark依赖关系jar,这样每次应用程序运行时都不需要分发它。

  • 在Hive 2.2.0之前,将spark-assembly jar上传到hdfs文件(例如:hdfs:// xxxx:8020 / spark-assembly.jar)并在hive-site.xml中添加以下内容

      spark.yarn.jar

      hdfs://xxxx:8020/spark-assembly.jar

  • Hive 2.2.0及之后,将$ SPARK_HOME / jars中的所有jar上传到hdfs文件夹(例如:hdfs:/// xxxx:8020 / spark-jars)并在hive-site.xml中添加以下内容

      spark.yarn.jars

      hdfs://xxxx:8020/spark-jars/*

     

     

    上述配置完成后会出现Failed to execute spark task, with exception 'org.apache.hadoop.hive.ql.metadata.HiveException(Failed to create spark client.)'
    FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.spark.SparkTask. Failed to create spark client.

     

    这样的问题,hive无法创建spark任务启动客户端,是因为缺少了spark的yarn-client的ip配置

     

    需要在hive-site.xml中增加一些配置


     
        spark.master
        spark://master:7077
     

你可能感兴趣的:(hive)