Hive-4.0.1数据库搭建(可选配置用户名密码远程连接,涵盖切换为tez引擎)

一、hive搭建(所依赖的Hadoop集群参照文章:最新版hadoop-3.4.0集群安装和配置(目前论坛的都是老古董了,看我的准没错!!!)这里以三台服务器为例_hadoop 3.4安装-CSDN博客)(区别是这里Hadoop版本3.3.6,hive4.0.1)

1.官网下载tar包上传到服务器并解压(我这里解压到了hive目录):

请添加图片描述

2.进入到conf目录,并复制模板配置文件进行修改:

cd /apache-hive-4.0.1-bin/conf
cp hive-default.xml.template hive-site.xml

3.编写内容如下:

<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://localhost:3306/hive_metastore?createDatabaseIfNotExist=true</value>  <!--改成自己的数据库-->
</property>
<property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value> <!--改成自己的数据库驱动。我这里是5.7版本不要.cj-->
</property>
<property><name>javax.jdo.option.ConnectionUserName</name><value>your_username</value>  <!--改成自己的数据库连接用户名-->
</property>
<property><name>javax.jdo.option.ConnectionPassword</name><value>your_password</value> <!--改成自己的数据库连接密码-->
</property>
4.重点注意:
因为我们这里用的官方配置文件模板,还需要将hive-site.xml文件里的 s y s t e m : j a v a . i o . t m p d i r 全部修改成 {system:java.io.tmpdir}全部修改成 system:java.io.tmpdir全部修改成{java.io.tmpdir}, s y s t e m : u s e r . n a m e 全部修改成 {system:user.name}全部修改成 system:user.name全部修改成{user.name},否则在进入beeline连接后会报错拒绝连接

5.注意因为这里使用了mysql作为元数据库,需要下载mysql驱动jar包上传到lib目录下,选择自己对应的版本jar包即可:

请添加图片描述

6.初始化元数据库:

schematool -dbType mysql -initSchema

请添加图片描述

7.依次执行一下命令(使用nohup 后台运行,没有nohup工具的自行下载)

nohup hive --service metastore > /hive/apache-hive-4.0.1-bin/logs/metastore.log &    #后面输出目录改为自己想要存放的路径即可
nohup hive --service hiveserver2 > /hive/apache-hive-4.0.1-bin/logs/hiveserver2.log &

8.查看进程启动成功:

请添加图片描述

9.进入控制台并连接:

请添加图片描述

这里还未设置hive用户名密码连续两次回车即可,到此hive搭建成功!

可选配置(设置hive用户名密码连接,修改hive-site.xml以下部分:

<!--设置相应用户名和密码--><property><name>hive.server2.thrift.client.user</name><value>root</value><description>Username to use against thrift client</description></property><property><name>hive.server2.thrift.client.password</name><value>123456</value><description>Password to use against thrift client</description></property>

修改此配置务必重新初始化元数据:

schematool -dbType mysql -initSchema
二、切换tez引擎(选用0.10.4版本):

1.官网下载tez安装包并上传到服务器解压到/hive/tez目录下:

请添加图片描述

2.加入环境变量

vim /etc/profile  #在该文件加入以下配置HADOOP_CLASSPATH=`hadoop classpath`
TEZ_HOME=/hive/tez/apache-tez-0.10.4-bin
export TEZ_CONF_DIR=$HADOOP_CONF_DIR
export TEZ_JARS=$TEZ_HOME/*.jar:$TEZ_HOME/lib/*.jar
export HADOOP_CLASSPATH=$TEZ_CONF_DIR:$TEZ_JARS:$HADOOP_CLASSPATH

3.hdfs创建目录:

# 在HDFS上创建目录
hdfs dfs -mkdir -p /user/tez/
# 上传安装包并重命名,这里不需要解压,直接上传即可,需要在该安装包目录执行以下命令
hdfs dfs -put apache-tez-0.10.4-bin.tar.gz /user/tez/tez.tar.gz

4、增加tez-site.xml配置文件

#进入Hadoop配置文件目录
cd /hadoop/hadoop-3.3.6/etc/hadoop
#创建tez-site.xml
vim tez-site.xml
# 加入以下内容
<?xml version="1.0" encoding="UTF-8"?>
<configuration><!-- 指定在hdfs上的tez包文件 --><property><name>tez.lib.uris</name><value>hdfs://ali-Promthues:9000/user/tez/tez.tar.gz</value></property>
</configuration>

5.配置完成分发配置Hadoop是分布式模式运行,配置修改完成之后记得分发并重启集群

scp -r /hadoop root@ali-business-vm1:/hadoop/

6.编辑hive-site.xml文件:

# 增加下列配置,其他保持不变<property><name>hive.execution.engine</name><value>tez</value><description>Expects one of [mr, tez, spark].Chooses execution engine. Options are: mr (Map reduce, default), tez, spark. While MRremains the default engine for historical reasons, it is itself a historical engineand is deprecated in Hive 2 line. It may be removed without further warning.</description></property><property><name>hive.tez.container.size</name><value>4096</value><description>By default Tez will spawn containers of the size of a mapper. This can be used to overwrite.</description></property><property><name>hive.cli.tez.session.async</name><value>false</value><description>Whether to start Tezsession in background when running CLI with Tez, allowing CLI to be available earlier.</description></property>

7.解决log4j冲突问题
由于hadoop、hive、tez包中都包含了log4j的依赖,一起搭配使用会造成冲突

故只保留hadoop自带的即可,将hive、tez对应的jar包重命名即可

cd /hive/tez/lib

将log4j对应jar包进行重命名(这里不用删除,凡事留个万一)

mv slf4j-log4j12-1.7.25.jar slf4j-log4j12-1.7.25.jar.bak
mv slf4j-reload4j-1.7.36.jar slf4j-reload4j-1.7.36.jar.bak

8.重启hadoop,重启hive:

start-all.sh #hadoop集群启动
#nohup启动hive,后台运行
nohup hive --service metastore > /hive/apache-hive-4.0.1-bin/logs/metastore.log &
nohup hive --service hiveserver2 > /hive/apache-hive-4.0.1-bin/logs/hiveserver2.log &

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/491738.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv11改进,YOLOv11添加DLKA-Attention可变形大核注意力,WACV2024 ,二次创新C3k2结构

摘要 作者引入了一种称为可变形大核注意力 (D-LKA Attention) 的新方法来增强医学图像分割。这种方法使用大型卷积内核有效地捕获体积上下文,避免了过多的计算需求。D-LKA Attention 还受益于可变形卷积,以适应不同的数据模式。 理论介绍 大核卷积(Large Kernel Convolu…

Reactor 响应式编程(第二篇:Spring Webflux)

系列文章目录 Reactor 响应式编程&#xff08;第一篇&#xff1a;Reactor核心&#xff09; Reactor 响应式编程&#xff08;第二篇&#xff1a;Spring Webflux&#xff09; Reactor 响应式编程&#xff08;第三篇&#xff1a;R2DBC&#xff09; Reactor 响应式编程&#xff08…

keepalived的高可用集群

keepalived的概念 keepalived的工作原理 基于vrrp实现的调度器高可用方案 keepalived的配置实验 先在调度服务器上安装keepalived和ipvsadm apt -y install keepalived ipvsadm 复制keepalived的配置文件到/etc/keepalived/目录下 cp /usr/share/doc/keepalived/samples/keep…

Linux中输入和输出基本过程

1.文件内核级缓冲区 前面在如何理解Linux一切皆文件的特点中提到为了保证在Linux中所有进程访问文件时的方式趋近相 同&#xff0c;在f ile 结构体中存在一个 files_operations 结构体指针&#xff0c;对应的结构体保存所有文件操作的函 数指针&#xff08;这个结构体也被称为…

shell编程2 永久环境变量和字符串显位

声明 学习视频来自B站UP主 泷羽sec 常见变量 echo $HOME &#xff08;家目录 root用户&#xff09; /root cd /root windows的环境变量可以去设置里去新建 为什么输入ls dir的命令的时候就会输出相应的内容呢 因为这些命令都有相应的变量 which ls 通过这个命令查看ls命令脚本…

如何对 Java 项目简化接口设计提升开发效率

文章目录 摘要引言简洁接口设计的原则示例代码OrderProcessor 接口StandardOrderProcessor 实现类Order 数据类调用方代码&#xff1a;OrderService 模块之间的协作QA 环节总结参考资料 摘要 简洁的接口设计可以有效降低代码依赖与耦合度&#xff0c;提高代码的可维护性和扩展…

Node.js安装配置+Vue环境配置+创建一个VUE项目

目录 安装Node.js搭建VUE环境 安装Node.js 下载 测试是否安装成功 在目录下新建两个文件夹 管理员打开cmd npm config set prefix "D:\Software\nodejs\node_global" npm config set cache "D:\Software\nodejs\node_cache"将默认的 C 盘下【 AppData\…

【Spring 全家桶】Spring MVC 快速入门,开始web 更好上手(上篇) , 万字解析, 建议收藏 ! ! !

本篇会加入个人的所谓鱼式疯言 ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. &#x1f92d;&#x1f92d;&#x1f92d;可能说的不是那么严谨.但小编初心是能让更多人…

【CSS in Depth 2 精译_080】 13.1:CSS 渐变效果(中)——不同色彩空间的颜色插值算法在 CSS 渐变中的应用

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第四部分 视觉增强技术 ✔️【第 13 章 渐变、阴影与混合模式】 ✔️ 13.1 渐变 ✔️ 13.1.1 使用多个颜色节点&#xff08;上&#xff09;13.1.2 颜色插值方法&#xff08;中&#xff09; ✔️13.1…

JavaEE 【知识改变命运】06 多线程进阶(1)

文章目录 锁一常见的锁乐观锁和悲观锁轻量级锁和重量级锁自旋锁和挂起等待锁读写锁和普通互斥锁公平锁和不公平锁可重入锁和不可重入锁sycnchroized是什么锁 CAS什么是CASCAS伪代码CSA是怎么实现的CAS如何保证线程安全的呢实现自旋锁JDK中提供的使用自旋锁的方式处理锁竞争CAS …

Elasticsearch02-安装7.x

零、文章目录 Elasticsearch02-安装7.x 1、Windows安装Elasticsearch &#xff08;1&#xff09;JDK安装 Elasticsearch是基于java开发的&#xff0c;所以需要安装JDK。我们安装的Elasticsearch版本是7.15&#xff0c;对应JDK至少1.8版本以上。也可以不安装jdk&#xff0c;…

又要考试了

一、实现无名管道练习&#xff1a;父进程写入管道&#xff0c;子进程读取管道数据。 #include<myhead.h> int main(int argc, const char *argv[]) {int fd[2];char buff[1024]"王吕阳&#xff0c;崔庆权别卷了";char s[1024];if(pipe(fd)-1){perror("pi…

Unity添加newtonsoft-json

package name "com.unity.nuget.newtonsoft-json": "3.2.1",打开包管理器 输入包名称和版本 点击添加

HarmonyOS:多线程并发-Worker

Worker主要作用是为应用程序提供一个多线程的运行环境&#xff0c;可满足应用程序在执行过程中与宿主线程分离&#xff0c;在后台线程中运行一个脚本进行耗时操作&#xff0c;极大避免类似于计算密集型或高延迟的任务阻塞宿主线程的运行。具体接口信息及使用方法详情请见Worker…

JMeter配置原件-计数器

一、面临的问题&#xff1a; 由于本人的【函数助手对话框】中counter计数器每次加2&#xff0c;且只显示偶数(如下图所示)&#xff0c;因此借助【配置原件-计数器】来实现计数功能。 如果有大佬知道解决方式&#xff0c;麻烦评论区解答一下&#xff0c;谢谢。 二、配置原件-c…

系统可观测性——Logback日志框架

摘要 Logback是一种Java日志框架&#xff0c;可以提供高度可配置的日志记录功能&#xff0c;包括级别控制和事件过滤等功能。它基于SLF4J&#xff08;Simple Logging Facade for Java&#xff09;日志抽象层&#xff0c;可以与多种流行的Java日志框架兼容&#xff0c;如Log4j和…

【自然语言处理与大模型】使用llama.cpp将HF格式大模型转换为GGUF格式

llama.cpp的主要目标是在本地和云端的各种硬件上以最小的设置和最先进的性能实现LLM推理。是一个专为大型语言模型&#xff08;LLM&#xff09;设计的高性能推理框架&#xff0c;完全使用C和C编写&#xff0c;没有外部依赖&#xff0c;这使得它可以很容易地被移植到不同的操作系…

NVR小程序接入平台EasyNVR设置预置位显示“参数错误”的解决方法

视频监控技术在现代社会中的应用已经变得越来越广泛&#xff0c;从城市安防到家庭安全&#xff0c;从交通管理到商业监控&#xff0c;其作用无处不在。随着科技的不断进步&#xff0c;视频监控不仅提高了安全性&#xff0c;还带来了许多新的机遇和挑战。 近期&#xff0c;我们收…

【MySQL】InnoDB引擎中的Compact行格式

目录 1、背景2、数据示例3、Compact解释【1】组成【2】头部信息【3】隐藏列【4】数据列 4、总结 1、背景 mysql中数据存储是存储引擎干的事&#xff0c;InnoDB存储引擎以页为单位存储数据&#xff0c;每个页的大小为16KB&#xff0c;平时我们操作数据库都是以行为单位进行增删…

达梦查询表字段详细信息脚本(字段名称、描述、类型、长度及是否为空)

达梦查询表字段详细信息脚本&#xff08;字段名称、描述、类型、长度及是否为空&#xff09; 该SQL 脚本&#xff0c;用于查询表中字段的基本信息&#xff0c;包括字段名称、描述、数据类型、数据长度、是否为空及是否为主键等属性。 SQL 脚本 -- 输入变量 DECLAREp_owner VA…