3.1.2 Hive on Spark配置

2023-11-06

*3.1.2* *Hive* *on* *Spark配置*

*1)兼容性说明*

注意:官网下载的Hive3.1.2和Spark3.0.0默认是不兼容的。因为Hive3.1.2支持的Spark版本是2.4.5,所以需要我们重新编译Hive3.1.2版本。

编译步骤:官网下载Hive3.1.2源码,修改pom文件中引用的Spark版本为3.0.0,如果编译通过,直接打包获取jar包。如果报错,就根据提示,修改相关方法,直到不报错,打包获取jar包。

*2********)在Hive所在节点部署Spark*

如果之前已经部署了Spark,则该步骤可以跳过,但要检查SPARK_HOME的环境变量配置是否正确。

(1)Spark官网下载jar包地址:

http://spark.apache.org/downloads.html

(2)上传并解压解压spark-3.0.0-bin-hadoop3.2.tgz

[atguigu@hadoop102 software]$ tar -zxvf spark-3.0.0-bin-hadoop3.2.tgz -C /opt/module/

[atguigu@hadoop102 software]$ mv /opt/module/spark-3.0.0-bin-hadoop3.2 /opt/module/spark

(3)配置SPARK_HOME环境变量

[atguigu@hadoop102 software]$ sudo vim /etc/profile.d/my_env.sh

添加如下内容

# SPARK_HOME

export SPARK_HOME=/opt/module/spark

export PATH= P A T H : PATH: PATH:SPARK_HOME/bin

source 使其生效

[atguigu@hadoop102 software]$ source /etc/profile.d/my_env.sh

(4)新建spark配置文件

[atguigu@hadoop102 software]$ vim /opt/module/hive/conf/spark-defaults.conf

添加如下内容(在执行任务时,会根据如下参数执行)

spark.master yarn

spark.eventLog.enabled true

spark.eventLog.dir hdfs://192.168.135.131:9820/spark-history

spark.executor.memory 1g

spark.driver.memory 1g

(5)在HDFS创建如下路径,用于存储历史日志

[atguigu@hadoop102 software]$ hadoop fs -mkdir /spark-history

*3********)向HDFS上传Spark纯净版jar包*

​ 说明1:由于Spark3.0.0非纯净版默认支持的是hive2.3.7版本,直接使用会和安装的Hive3.1.2出现兼容性问题。所以采用Spark纯净版jar包,不包含hadoop和hive相关依赖,避免冲突。

​ 说明2:Hive任务最终由Spark来执行,Spark任务资源分配由Yarn来调度,该任务有可能被分配到集群的任何一个节点。所以需要将Spark的依赖上传到HDFS集群路径,这样集群中任何一个节点都能获取到。

(1)上传并解压spark-3.0.0-bin-without-hadoop.tgz

[atguigu@hadoop102 software]$ tar -zxvf /opt/software/spark-3.0.0-bin-without-hadoop.tgz

(2)上传Spark纯净版jar包到HDFS

[atguigu@hadoop102 software]$ hadoop fs -mkdir /spark-jars

[atguigu@hadoop102 software]$ hadoop fs -put spark-3.0.0-bin-without-hadoop/jars/* /spark-jars

*4********)修改hive-site********.xml********文件*

[atguigu@hadoop102 ~]$ vim /opt/module/hive/conf/hive-site.xml

添加如下内容

spark.yarn.jars

hdfs://192.168.135.131:9820/spark-jars/*

hive.execution.engine

spark

hive.spark.client.connect.timeout

10000ms

注意:hive.spark.client.connect.timeout的默认值是1000ms,如果执行hive的insert语句时,抛如下异常,可以调大该参数到10000ms

FAILED: SemanticException Failed to get a spark session: org.apache.hadoop.hive.ql.metadata.HiveException: Failed to create Spark client for Spark session d9e0224c-3d14-4bf4-95bc-ee3ec56df48e

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

3.1.2 Hive on Spark配置 的相关文章

随机推荐

  • 伺服速度控制模式接线图_伺服控制的三种模式,接线方式与参数设置的讲解

    伺服电机速度控制和转矩控制都是用模拟量来控制 位置控制是通过发脉冲来控制 具体采用什么控制方式要根据客户的要求以及满足何种运动功能来选择 接下来 给大家介绍伺服电机的三种控制方式 如果您对电机的速度 位置都没有要求 只要输出一个恒转矩 当然
  • 统计连续字符-2022年全国青少年信息素养大赛Python国赛第7题

    导读 超平老师计划推出 全国青少年信息素养大赛Python编程真题解析 50讲 这是超平老师解读Python编程挑战赛真题系列的第9讲 全国青少年信息素养大赛 原全国青少年电子信息智能创新大赛 是 世界机器人大会青少年机器人设计与信息素养大
  • 电磁仿真:十年磨一剑!基于HFSS、ADS微带滤波器仿真与设计

    作者 stone 仿真秀平台作者 CAE工程师如何提高仿真实力 冲击高薪 戳此了解详情 导读 自毕业至今 从事微波射频相关工作已经十年了 回想这个行业的点点滴滴 有一些个人的学习心得体会和大家分享一下 实践是检验真理的唯一标准 这句话一直伴
  • RNA-seq——三、使用Hisat2进行序列比对

    步骤 1 下载对应的index 2 序列比对 3 samtools 将sam文件转为bam文件 4 将bam文件载入IGV 为什么要比对 https www jianshu com p 681e02e7f9af Jimmy老师主要演示了四种
  • 什么是隐马尔可夫模型(HMM)?案例介绍

    HMM简介 隐马尔可夫模型 Hidden Markov Model HMM 是统计模型 它用来描述一个含有隐含未知参数的马尔可夫过程 其难点是从可观察的参数中确定该过程的隐含参数 然后利用这些参数来作进一步的分析 例如模式识别 一 简单案例
  • 微信小程序crypto-js AES 加解密数据

    微信小程序在与后台交互数据过程中 敏感数据需要加解密 本篇博客介绍在微信小程序中如何使用 crypto js 中的 AES 算法加解密数据 使用crypto js加解密详解 https blog csdn net Umbrella Um a
  • lua取模运算math.fmod和% 的区别

    我们知道 取模就是求余的意思 比如3 2 1这样子 lua中的 就是求余的运算符号 此外在数学库中还有一个math fmod的函数 他们都能进行求余运算 print 15 4 math fmod 15 4 输出 0 1 0 1 另外可以对小
  • C语言函数大全-- u 开头的函数

    u 开头的函数 1 ultoa 1 1 函数说明 1 2 演示示例 1 3 运行结果 2 ungetc 2 1 函数说明 2 2 演示示例 2 3 运行结果 3 ungetch 3 1 函数说明 3 2 演示示例 3 3 运行结果 4 un
  • python集合中的元素是否可以重复_python中集合中的元素是否可以重复

    python中集合中的元素不可以重复 集合是一个无序的不重复元素序列 我们可以使用大括号 或者set 函数来创建一个集合 具体语法为 parame value01 value02 python中集合中的元素不可以重复 推荐学习 python
  • vue elementui导航菜单不对齐

    解决方法 给 el aside添加text align start el aside background color 3A4E67 color fff line height 200px text align start
  • Android 围绕中心旋转动画

    Android 围绕中心旋转动画 一 简介 开发中遇到扫描蓝牙动画需求 如下图所示 因此以下简单记录一下 方便以后使用 Android 平台提供了两类动画 一类是 Tween 动画 即通过对场景里的对象不断做图像变换 平移 缩放 旋转 产生
  • C++/Python机器学习—BP神经网络

    一 Python import random import numpy as np import matplotlib pyplot as plt 定义激活函数 def sigmoid x return 1 1 np exp x 定义激活函
  • 决策数算法进阶:属性测试条件、最佳划分度量、过拟合现象的处理

    我们在先前博文中已经简要介绍了决策树的思想和几个经典算法来构造决策树 决策树算法简介及其MATLAB实现代码 今天我们要针对决策树继续深入探讨一些的问题 目录如下 目录 一 表示属性测试条件的方法 二 选择最佳划分的度量 三 处理决策树归纳
  • pytorch 神经网络套路 使用Dataset,DataLoader实现多维输入特征的二分类

    1 数据集 传送门 内含刘老师讲课视频PPT及相关数据集 本文所用数据集名为diabetes cvs gz 链接 https pan baidu com s 1vZ27gKp8Pl qICn p2PaSw 提取码 cxe4 其中 x1 x8
  • mysql java连接说明

    jdbc mysql 127 0 0 1 3306 guns autoReconnect true useUnicode true characterEncoding utf8 zeroDateTimeBehavior convertToN
  • CentOS 8 下 Mysql 8 主从从的搭建

    CentOS 8 下 Mysql 8 主从从的搭建 1 环境 root localhost etc cat etc redhat release CentOS Linux release 8 2 2004 Core root localho
  • 学习网络安全踩坑笔记

    文章目录 前言 一 Window踩坑 1 虚拟机安装系统失败 解决办法 2 编写批处理文件 3搭建web服务器出现目录而不是网页 4用户加入域常见问题 5 域环境中添加DHCP服务器授权时 DHCP服务无法访问 Windows Active
  • 高光谱遥感图像处理(14)-----ENVI使用教程之监督分类与非监督分类

    监督分类 又称训练分类法 用被确认类别的样本像元去识别其他未知类别像元的过程 它是在分类之前通过目视判读和野外调查 对遥感图像上某些样区中影像地物的类别属性有了先验知识 对每一种类别选取一定数量的训练样本 计算机计算每种训练样区的统计或其他
  • Maven本地仓库位置设置和实际读取不正确问题

    今天发现自己的项目的maven本地仓库不是默认的位置 默认位置一般是 C Users 用户名 m2 repository 然后我在idea中 尝试变更 本地仓库位置 变更之后 发现读取的位置没有发现变化 不是自己这里设置的位置 后来发现 在
  • 3.1.2 Hive on Spark配置

    3 1 2 Hive on Spark配置 1 兼容性说明 注意 官网下载的Hive3 1 2和Spark3 0 0默认是不兼容的 因为Hive3 1 2支持的Spark版本是2 4 5 所以需要我们重新编译Hive3 1 2版本 编译步骤