Hive3.1.2 on Tez0.10.1的安装部署

article/2025/11/1 2:24:54

一、Hive环境搭建

  1. Hive安装部署
1)把apache-hive-3.1.2-bin.tar.gz上传到linux的/opt/software目录下
2)解压apache-hive-3.1.2-bin.tar.gz到/opt/module/目录下面
[yili@hadoop102 software]$ tar -zxvf /opt/software/apache-hive-3.1.2-bin.tar.gz -C /opt/module/
3)修改apache-hive-3.1.2-bin.tar.gz的名称为hive
[yili@hadoop102 software]$ mv /opt/module/apache-hive-3.1.2-bin/ /opt/module/
4)修改/etc/profile.d/my_env.sh,添加环境变量
[yili@hadoop102 software]$ sudo vim /etc/profile.d/my_env.sh
添加内容
#HIVE_HOME
export HIVE_HOME=/opt/module/hive-3.1.2
export PATH=$PATH:$HIVE_HOME/bin
重启Xshell对话框或者source一下 /etc/profile.d/my_env.sh文件,使环境变量生效
[yili@hadoop102 software]$ source /etc/profile.d/my_env.sh
5)解决日志Jar包冲突,进入/opt/module/hive-3.1.2/lib目录
[yili@hadoop102 lib]$ mv log4j-slf4j-impl-2.10.0.jar log4j-slf4j-impl-2.10.0.jar.bak
  1. Hive元数据配置到MySQL
    (1)拷贝驱动
将MySQL的JDBC驱动拷贝到Hive的lib目录下
[yili@hadoop102 lib]$ cp /opt/software/mysql-connector-java-bin-5.1.27.jar /opt/module/hive-3.1.2/lib/

(2)配置MySQL作为元数据存储

$HIVE_HOME/conf目录下新建hive-site.xml文件
[atguigu@hadoop102 conf]$ vim hive-site.xml
添加如下内容
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://hadoop102:3306/metastore?useSSL=false?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value></property><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value></property><property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value></property><property><name>hive.metastore.warehouse.dir</name><value>/user/hive/warehouse</value></property><property><name>hive.metastore.schema.verification</name><value>false</value></property><property><name>hive.server2.thrift.port</name><value>10000</value></property><property><name>hive.server2.thrift.bind.host</name><value>hadoop102</value></property><property><name>hive.metastore.event.db.notification.api.auth</name><value>false</value></property><property><name>hive.cli.print.header</name><value>true</value></property><property><name>hive.cli.print.current.db</name><value>true</value></property>
</configuration>
  1. 启动Hive
    (1)初始化元数据库

1)登录MySQL

[yili@hadoop102 conf]$ mysql -uroot -p123456

2)新建Hive元数据库

mysql> create database metastore;
mysql> quit;

3)初始化Hive元数据库

[yili@hadoop102 conf]$ schematool -initSchema -dbType mysql -verbose

(2)启动hive客户端
1)启动Hive客户端

[yili@hadoop102 hive]$ bin/hive

2)查看数据库

hive (default)> show databases;
OK
database_name
default
  1. Hive引擎介绍
    Hive引擎包括:默认MR、tez、spark
  2. Hive on Tez配置
    (1)在Hive所在节点部署Tez
    1)tez下载地址:
    链接:https://pan.baidu.com/s/1HgyIgO3GgNtqQaF8EYD4oQ
    提取码:yyds
    2)将tez安装包拷贝到集群,并解压tar包,注意解压的是minimal
 mkdir /opt/module/teztar -zxvf /opt/software/tez-0.10.1-SNAPSHOT-minimal.tar.gz -C /opt/module/tez

3)上传tez依赖到HDFS(上传的是不带minimal的那个)

hadoop fs -mkdir /tez(集群创建/tez路径,然后再上传,注意路径)
hadoop fs -put /opt/software/tez-0.10.1-SNAPSHOT.tar.gz /tez

4)新建tez-site.xml在$HADOOP_HOME/etc/hadoop/路径下(注意,不要放在hive/conf/目录下,不生效),记得把tez-site.xml同步到集群其他机器。

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- 注意你的路径以及文件名是否和我的一样 -->
<property><name>tez.lib.uris</name><value>${fs.defaultFS}/tez/tez-0.10.1-SNAPSHOT.tar.gz</value>
</property>
<property><name>tez.use.cluster.hadoop-libs</name><value>true</value>
</property>
<property><name>tez.am.resource.memory.mb</name><value>1024</value>
</property>
<property><name>tez.am.resource.cpu.vcores</name><value>1</value>
</property>
<property><name>tez.container.max.java.heap.fraction</name><value>0.4</value>
</property>
<property><name>tez.task.resource.memory.mb</name><value>1024</value>
</property>
<property><name>tez.task.resource.cpu.vcores</name><value>1</value>
</property>
</configuration>

4)修改Hadoop环境变量,添加以下内容

cd /opt/module/hadoop-3.1.3/etc/hadoop/shellprofile.d
vi example.sh
hadoop_add_profile tez
function _tez_hadoop_classpath
{hadoop_add_classpath "$HADOOP_HOME/etc/hadoop" afterhadoop_add_classpath "/opt/module/tez/*" afterhadoop_add_classpath "/opt/module/tez/lib/*" after
}

5)修改hive的计算引擎,vim $HIVE_HOME/conf/hive-site.xml,添加以下内容

<property><name>hive.execution.engine</name><value>tez</value>
</property>
<property><name>hive.tez.container.size</name><value>1024</value>
</property>

6)在hive-env.sh中添加tez的路径

export TEZ_HOME=/opt/module/tez    #是你的tez的解压目录
export TEZ_JARS=""
for jar in `ls $TEZ_HOME |grep jar`; doexport TEZ_JARS=$TEZ_JARS:$TEZ_HOME/$jar
done
for jar in `ls $TEZ_HOME/lib`; doexport TEZ_JARS=$TEZ_JARS:$TEZ_HOME/lib/$jar
doneexport HIVE_AUX_JARS_PATH=/opt/module/hadoop-3.1.3/share/hadoop/common/hadoop-lzo-0.4.21-SNAPSHOT.jar$TEZ_JARS

7)解决日志Jar包冲突

rm /opt/module/tez/lib/slf4j-log4j12-1.7.10.jar
  1. Hive on Tez测试
1)启动Hive
[yili@hadoop102 hive]$ hive
2)创建表
hive (default)> create table student(
id int,
name string);
3)向表中插入数据
hive> insert into table student values(3,'guodong');
4)如果没有报错就表示成功了
Query ID = yili_20220721144352_ebaa6f16-71e2-4bd5-bfcf-b611af819ebb
Total jobs = 1
Launching Job 1 out of 1
Tez session was closed. Reopening...
Session re-established.
Session re-established.
Status: Running (Executing on YARN cluster with App id application_1658371098258_0011)----------------------------------------------------------------------------------------------VERTICES      MODE        STATUS  TOTAL  COMPLETED  RUNNING  PENDING  FAILED  KILLED  
----------------------------------------------------------------------------------------------
Map 1 .......... container     SUCCEEDED      1          1        0        0       0       0  
Reducer 2 ...... container     SUCCEEDED      1          1        0        0       0       0  
----------------------------------------------------------------------------------------------
VERTICES: 02/02  [==========================>>] 100%  ELAPSED TIME: 17.20 s    
----------------------------------------------------------------------------------------------
Loading data to table default.student
OK
Time taken: 31.1 seconds
hive> select * from student;
OK
1       zhangsan
2       linxin
3       guodong

但是现实却往往并没有这么顺利,再执行hive命令以及插入数据都分别报了一个错误,请看如下两个错误;
error1:
在这里插入图片描述
错误描述:报错的大概内容就是加载hive的过程中,缺少相关依赖:
解决办法:下载相关依赖commons-collections4-4.1.jar,然后放置到$HIVE_HOME/lib目录下
error2:
在这里插入图片描述
错误描述:当向hive库插入数据时候会报上述错误
解决办法:
向表中 执行一次load 函数从本机加载数据到表中,下次就不会报这个错误了。


http://chatgpt.dhexx.cn/article/C6bR78SC.shtml

相关文章

HIVE-TEZ引擎配置安装

HIVE-TEZ引擎配置安装 基础环境准备参考安装流程1. TEZ环境准备1. 编译工具2. HADOOP3. PROTOBUF安装流程 4. LZO安装流程 5. TEZ安装流程 2. TEZ配置1. HADOOPtez-site.xmltez.sh 2. HIVEhive-site.xmlhive-env.sh日志JAR包冲突 END! 基础环境准备 由于该文章主要关注TEZ引擎…

Tez安装与使用(与hive配合使用)及lzo.jar报错错误解决

1 tez介绍 tez是一个apache的开源项目&#xff0c;意在构建一个应用框架&#xff0c;能通过复杂任务的DAG来处理数据。它是基于当前的hadoop yarn之上&#xff0c;换句话就是yarn为其提供资源。 tez主要的两个设计目标: 增强终端用户使用: 灵活的数据流定义API 灵活的输入…

Tez安装配置

介绍&#xff1a;hive默认计算引擎为MR&#xff0c;而MR的特性决定了它的运算速度并不是太让人满意。在此将其运算引擎修改为Tez&#xff08;当然在此需要先安装Tez&#xff09;&#xff0c;Tez基于内存的计算使得hive可以有更高的运算效率 对于 Tez 0.8.3 及更高版本&#xf…

计算引擎Tez安装

1.解压压缩包 tar -zxvf apache-tez-0.9.2-bin.tar.gz2.将tez路径下的压缩包放到hdfs上 /opt/lagou/servers/tez/share/tez.tar.gzhdfs dfs -mkdir /user/tez hdfs dfs -put tez.tar.gz /user/tez/3.配置hadoop让其他地方知道该路径 该路径下新建配置文件tez-site.xml /opt/…

tez得文件生成个数与什么有关?

之前研究过hive on spark&#xff0c;最后的文件生成个数hive-mapJoin和skewJoin-CSDN博客 现在在cdp了 使用的是hive on tez。也在学习下这个文件的生成个数与什么有关&#xff1f; 以该表为例 有11个文件 每个差不多60M左右 总共620M左右。 我们先想下 哪些参数和生成的文件…

hive-tez

1 参考&#xff1a; https://www.freesion.com/article/9435149734/ https://blog.csdn.net/Shea1992/article/details/101041244 https://www.jianshu.com/p/9fb9f32e1f0f https://www.jianshu.com/p/45c95a51a8c2 https://blog.csdn.net/weixin_43941899/article/details/105…

CDH6.3.2搭建HIVE ON TEZ步骤

|引言 参考&#xff1a;CDH6.3.2 hive on tez搭建过程_我不是橙子的博客-CSDN博客 CDH6.3.2版本搭建Tez执行引擎过程 - 虎啸千峰 - 博客园 hive on tez集成完整采坑指南(含tez-ui及安全环境)_匆匆z2的博客-CSDN博客_hive on tez 下载过程中若是感觉慢的话可以参考这个操作步…

tez-ui docker镜像打包配置并部署K8S

一、下载tez ui安装包并修改配置文件 1.1 选择版本下载&#xff0c; tez-ui下载官方地址 mkdir tez-ui && cd tez-ui wget https://repository.apache.org/content/repositories/releases/org/apache/tez/tez-ui/0.9.1/tez-ui-0.9.1.war1.2 解压war包&#xff0c;修改…

Apache Tez 了解

转发自这位大佬博客&#xff1a;https://www.cnblogs.com/rongfengliang/p/6991020.html 你可能听说过Apache Tez&#xff0c;它是一个针对Hadoop数据处理应用程序的新分布式执行框架。但是它到底是什么呢&#xff1f;它的工作原理是什么&#xff1f;哪些人应该使用它&#xf…

Tez - 安装

一、Tez 安装 1 下载地址 https://mirrors.tuna.tsinghua.edu.cn/apache/tez/0.9.0/ 2 二进制包安装 2.1 解压并重命名 [roothadoop01 ~]# tar -zxvf /home/apache-tez-0.9.0-bin.tar.gz -C /usr/local/ [roothadoop01 ~]# mv /usr/local/apache-tez-0.9.0-bin/ /usr/local/t…

tez详解

1 tez的概览 1.1 tez介绍 1.1.1 介绍 tez是一个apache的开源项目&#xff0c;意在构建一个应用框架&#xff0c;能通过复杂任务的DAG来处理数据。它是基于当前的hadoop yarn之上&#xff0c;换句话就是yarn为其提供资源。 tez主要的两个设计目标: 增强终端用户使用: 灵活…

TEZ深入理解

简介 Tez是Apache开源的支持DAG作业的计算框架&#xff0c;是支持HADOOP2.x的重要引擎。它源于MapReduce框架&#xff0c;核心思想是将Map和Reduce两个操作进一步拆分&#xff0c;分解后的元操作可以任意灵活组合&#xff0c;产生新的操作&#xff0c;这些操作经过一些控制程序…

Tez 简介

目录 一、Tez简介 二、Tez UI界面 三、Tez 日志 一、Tez简介 1.1 Tez 是支持 DAG 作业的开源计算框架&#xff0c;它可以将多个有依赖的作业转换为一个作业从而大幅提升 DAG 作业的性能。 从本质上讲&#xff0c;Tez 组成非常简单&#xff1a; 数据处理管道引擎&#xff…

TEZ介绍及使用

TEZ介绍及使用 TEZ是什么&#xff1f; Tez是支持DAG作业的开源计算框架&#xff0c;它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG 作业的性能。 Tez源于MapReduce框架&#xff0c;核心思想是将Map和Reduce两个操作进一步拆分&#xff0c;即Map被拆分成Input、Proc…

BACnet安全连接(BACnet/SC) 介绍

BACnet安全连接(BACnet/SC)是ASHRAE BACnet委员会最近发布的BACnet协议的增编。是在增编135-2016bj中介绍的。它基于一个安全的、加密的数据链路层。 专门设计以满足不同IP基础结构。对BACnet通信使用标准化的、通常已经存在的IP网络基础设施的需求正在增加&#xff0c;BACnet/…

BACnet学习笔记

BACnet是一种用于自动化建筑和控制网络的数据通信协议。(Building Automation and Control Networks) 自控网络通信协议基本体系: CAN -- 只定义了通信标准 BACnet BAC Model and Message Network Layer LANs The protocol can be viewed as a matrix of layers. Propertie…

BACnet协议简要说明及组网简介

主题概要BACnet协议BACnet协议简要说明&#xff0c;组网简介编辑时间新建20160217序号参考资料1BACnet协议正文1995版2http://www.bacnet.org/Tutorial/BACnetIP/ 1 协议说明 BACnet协议(A Data Communication Protocol for Building Automation and Control Networks)&#…

BACnet协议详解——应用层说明一

文章目录 写在前面1. 应用层模型1.1 需确认的应用层服务1.2 无需确认的应用层服务2 BACnet报文的分段2.1 报文分段规则2.1.1 APDU数据流的分段规则2.1.2 APDU最大长度的确定2.1.3 可接受的最大分段数2.2 分段协议控制信息(PCI)写在前面 年关将至,事情有点多,耽误了原本定好…

BACnet协议读取与发送

BACnet协议读取与发送 注意我的提问&#xff1a;更新开发环境BACnet相关基础知识BACnet格式BACnet代码BACnet设备查找BACnet设备读取BACnet写入操作AND其他...**BACpypes库中没有提供非标准数据类型接口&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;** 结束 因…

Bacnet协议报文格式详解(一)

系统实现基于BACnet/IP&#xff08;又称B/IP&#xff09;网络进行通讯。BACnet虚拟链路层&#xff08;BVLL&#xff09;提供了BACnet网络层和某指定的通讯子系统的接口&#xff0c;本文指定了BACnet虚拟链路控制&#xff08;BVLC&#xff09;要求支持的定向和广播信息。本实现关…