伪分布式部署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;

查看是否报错

相关推荐
长安城没有风4 小时前
从入门到精通【Redis】Redis 典型应⽤ --- 分布式锁
数据库·redis·分布式
爬山算法7 小时前
Redis(69)Redis分布式锁的优点和缺点是什么?
数据库·redis·分布式
随心............8 小时前
在开发过程中遇到问题如何解决,以及两个经典问题
hive·hadoop·spark
virtuousOne13 小时前
Kafka基础
分布式·kafka
虫小宝13 小时前
Java分布式架构下的电商返利APP技术选型与架构设计实践
java·分布式·架构
007php00713 小时前
百度面试题解析:Zookeeper、ArrayList、生产者消费者模型及多线程(二)
java·分布式·zookeeper·云原生·职场和发展·eureka·java-zookeeper
waving-black14 小时前
windows系统下安装测试kafka
windows·分布式·kafka
深思慎考14 小时前
RabbitMQ 入门:基于 AMQP-CPP 的 C++ 实践指南与二次封装
开发语言·c++·分布式·rabbitmq·api
Andya_net14 小时前
Java | 基于redis实现分布式批量设置各个数据中心的服务器配置方案设计和代码实践
java·服务器·分布式
yumgpkpm18 小时前
CMP (类ClouderaCDP7.3(404次编译) )华为鲲鹏Aarch64(ARM)信创环境 查询2100w行 hive 查询策略
数据库·数据仓库·hive·hadoop·flink·mapreduce·big data