伪分布式部署Hive

文章目录

  • [1 Hadoop 伪分布式安装](#1 Hadoop 伪分布式安装)
  • [1 Hive下载](#1 Hive下载)
  • [2 Hive配置](#2 Hive配置)
  • [3 安装MySQL JDBC连接器](#3 安装MySQL JDBC连接器)
  • [4 连接Hive CLI](#4 连接Hive CLI)
    • [4.1 初始化数据库](#4.1 初始化数据库)
    • [4.2 连接Hive](#4.2 连接Hive)

1 Hadoop 伪分布式安装

假设我们已经安装好hadoop伪分布式

1 Hive下载

Hive下载地址

2 Hive配置

Hive伪分布式需要在conf文件夹下修改两个文件,hive-env.sh用于指定hive找到hadoop,hive-site.xml用于指定megastore所连接的数据库

hive-env.sh

shell 复制代码
# Set HADOOP_HOME to point to a specific hadoop install directory
export HADOOP_HOME=/Users/collinsliu/hadoop-3.3.6/

# Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=/Users/collinsliu/hive-3.1.3/conf

hive-site.xml

shell 复制代码
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

<!-- jdbc 连接的 URL -->
<property>
	<name>javax.jdo.option.ConnectionURL</name>
	<value>jdbc:mysql://localhost:3306/metastore?useSSL=false</value>
</property>

<!-- jdbc 连接的 Driver-->
<property>
	<name>javax.jdo.option.ConnectionDriverName</name>
	<value>com.mysql.jdbc.Driver</value>
</property>

<!-- jdbc 连接的 username-->
<property>
	<name>javax.jdo.option.ConnectionUserName</name>
	<value>YOUR_MYSQL_USERNAME</value>
</property>

<!-- jdbc 连接的 password -->
<property>
	<name>javax.jdo.option.ConnectionPassword</name>
	<value>YOUR_MUSQL_PASSWORD</value>
</property>

<!-- Hive 元数据存储版本的验证 -->
<property>
	<name>hive.metastore.schema.verification</name>
	<value>false</value>
</property>

<!--元数据存储授权-->
<property>
	<name>hive.metastore.event.db.notification.api.auth</name>
	<value>false</value>
</property>

<!-- Hive 默认在 HDFS 的工作目录 -->
<property>	
	<name>hive.metastore.warehouse.dir</name>
	<value>/user/hive/warehouse</value>
</property>

<!-- 指定 hiveserver2 连接的 host -->
<property>
	<name>hive.server2.thrift.bind.host</name>4
	<value>localhost</value>
</property>

<!-- 指定 hiveserver2 连接的端口号 -->
<property>
	<name>hive.server2.thrift.port</name>
	<value>10000</value>
</property>

<!-- 指定本地模式执行任务,提高性能 -->
<property>
	<name>hive.exec.mode.local.auto</name>
	<value>true</value>
</property>
</configuration>

3 安装MySQL JDBC连接器

Hive metadata需要保存在外置数据库中,建议保存在MySQL数据库中。首先需要手动安装MYSQL,并且下载相应版本的JDBC Connector,下载地址在这里.,

JDBC Connector需要复制到lib文件夹中

4 连接Hive CLI

4.1 初始化数据库

首先需要建立数据库。进入mysql客户端,建立metadata数据库

shell 复制代码
> mysql -u USER_NAME -p

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 176
Server version: 8.0.27 MySQL Community Server - GPL

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.


> create database metastore;

接下来,为Hive初始化数据库。

相应的操作在bin文件夹中:

shell 复制代码
> ./hive -initSchema -dbtype mysql --verbose

4.2 连接Hive

连接Hive的指令操作在bin文件夹中

shell 复制代码
> ./hive --service cli

测试Hive

shell 复制代码
> create database;

查看是否报错

相关推荐
省四收割者14 分钟前
从硬件中断到分布式协程:全景解构高并发机制与 C / Golang 的巅峰对决
c++·分布式·嵌入式硬件·golang
知识分享小能手18 分钟前
Hadoop学习教程,从入门到精通, HBase 分布式数据库 — 完整知识点与案例代码(8)
数据库·hadoop·分布式
王小王-12330 分钟前
基于 Hadoop 的心脏病分析可视化与风险预测系统
大数据·hadoop·分布式·心脏病预测系统·疾病预测·冠心病风险预测
TPBoreas6 小时前
springboot3.5比2.x做了哪儿些提升
数据仓库·hive·hadoop
JiaHao汤15 小时前
分布式事务方案全景:从理论到 Seata 落地
java·分布式·spring·spring cloud
南部余额17 小时前
RabbitMQ 进阶:延迟队列完全指南
java·分布式·spring·rabbitmq
ExC1dNtqz1 天前
Redis 分布式锁进阶第六篇讲解
数据库·redis·分布式
Survivor0011 天前
分布式事务解决方案Seata源码分析
分布式·系统架构
我登哥MVP1 天前
SpringCloud Alibaba 核心组件解析:分布式事务(Seata)
java·spring boot·分布式·spring·spring cloud·java-ee·intellij-idea
ACP广源盛139246256731 天前
GSV6155@ACP#DP 1.4a 重定时器芯片,物理 AI 信号长距传输的稳定保障
大数据·人工智能·分布式·嵌入式硬件·spark