Ubuntu下部署Hadoop集群+Hive(三)

Hive部署

准备环境

apache-hive-4.0.0-bin.tar.gz、mysql-connector-j-8.1.0.jar

如果是离线安装的话,使用mysql-8.0.34-1.el7.x86_64.rpm-bundle.tar,在线安装的话则不用;

hive下载地址:Index of /hive (apache.org)

mysql connector下载地址:MySQL :: Download Connector/J

mysql下载地址:MySQL :: Download MySQL Community Server (Archived Versions)

只需要在主节点服务器上安装即可;

安装步骤参照:Hive 部署_hive部署-优快云博客

对应的视频课程参照:尚硅谷大数据Hive 3.x教程全新升级版(基于hive3.1.3)_哔哩哔哩_bilibili

几点注意事项:

1.我选择的是hive4.0版本,后续章节我将介绍如何将hive计算引擎更换为Tez,使用hive3.X版本,不管我使用 tez0.10.X版本还是0.09版本,都会出现相关库找不到的情况,后来更换为hive4.0+tez0.10.3版本后就对了;

2.mysql的安装,分为离线安装和在线安装,安装完成后,要让mysql支持远程访问,需要操作以下步骤:

(1) 打开mysql配置文件

/etc/mysql/mysql.conf.d# vi mysqld.cnf

(2)将这个地方注释,保存;

(3)需要让对外访问的用户,host属性配置为%,plugin属性配置为 mysql_native_password,比如我配置的是root用户,如下图所示:

配置方法:

进入到mysql命令行界面:

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> update mysql.user set host='%', plugin='mysql_native_password' where user='root' and host='localhost';

执行成功后,再执行flush privileges;退出。

到此,Hadoop集群 + Hive部署就已经完成,可以使用DBeaver软件连接Hive数据库进行访问操作,但是有一个问题,因为Hadoop默认计算引擎是MapReduce,运行会比较慢,我的是3台实体服务器,执行增删查改感觉都很慢,下一章,我将在此基础上进行优化,把计算引擎更换为Tez。

### HiveUbuntu上的安装与配置 #### 准备工作 为了确保Hive能够正常运作,在Ubuntu环境下需先完成必要的准备工作。由于Ubuntu基于Debian,建议优先采用`apt-get`工具来获取所需软件包而非尝试使用其他类型的打包方式如RPM文件[^3]。 #### 下载并部署Hive环境 对于具体版本的选择应当考虑到已有的Hadoop集群版本兼容性问题。以apache-hive-2.3.6为例,通过命令行执行如下操作可以顺利完成解压缩以及重命名过程: ```bash cd /usr/local/ sudo tar -zxvf apache-hive-2.3.6-bin.tar.gz mv apache-hive-2.3.6-bin hive ``` 随后赋予目录适当权限以便后续正常使用: ```bash sudo chown -R root ./hive/ ``` 以上步骤完成后即代表本地已经具备了一个初步可用的Hive实例[^2]。 #### 配置MySQL作为元数据存储服务端 鉴于直接处理`.tar.gz`形式分发版可能存在一定难度,推荐利用官方仓库中的资源简化这一流程。可以通过阅读特定指南了解详细的MySQL设置方法[^4]。另外还需单独准备适用于Java应用程序访问关系型数据库所需的JDBC驱动程序,并将其放置于$HIVE_HOME/lib路径之下[^1]。 #### 修改hive-site.xml实现持久化支持 编辑位于`${HIVE_HOME}/conf/hive-site.xml`内的XML文档加入下列条目从而指定外部Metastore的位置: ```xml <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.cj.jdbc.Driver</value> </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> ``` 上述更改使得Hive能够在启动期间自动创建必要表结构并将所有定义保存至远程SQL Server内。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值