当前位置: 首页 > news >正文

@Apache Hive 介绍部署与使用详细指南

Apache Hive 介绍、部署与使用详细指南


一、 概述与核心概念

1.1 什么是Apache Hive?

Apache Hive是一个构建在Hadoop之上的数据仓库软件,用于实现数据提取、转换和加载(ETL)操作。它提供了类似于SQL的查询语言——HiveQL(HQL),允许熟悉SQL的用户查询存储在Hadoop分布式文件系统(HDFS)和其他兼容存储系统(如S3、OSS)中的大规模数据集。

1.2 为什么使用Hive?
  • 降低开发门槛: 将复杂的MapReduce任务转换为简单的SQL-like查询,使得非Java程序员也能轻松处理大数据。
  • 高可扩展性: 基于Hadoop,可横向扩展以处理PB级数据。
  • 良好的容错性: 继承Hadoop的容错特性。
  • 灵活的数据模型: 支持结构化和半结构化数据(如JSON)的建模。
  • 丰富的生态系统: 与Hadoop生态中的其他工具(如Spark, Tez, HBase)无缝集成。
1.3 Hive架构核心组件
  1. Hive CLI/Beeline: 命令行界面。CLI是旧版,Beeline是基于JDBC的新版推荐工具。
  2. HiveServer2 (HS2): 允许多客户端远程提交查询的服务,支持并发和认证。
  3. Metastore: Hive的元数据管理中心,存储所有表的结构信息(如 schema、分区、存储位置等)。这是Hive的核心,通常使用独立的 relational DB(如 MySQL, PostgreSQL)来存储这些信息,而非HDFS。
  4. 执行引擎:
    • MapReduce (默认,但慢): 早期引擎。
    • Tez (推荐): 优化了MR的执行流程,更高效。
    • Spark (高性能): 使用Apache Spark作为执行引擎,速度最快。
  5. Driver: 接收查询,管理生命周期,并协调执行。

二、 部署指南 - 以 Hadoop 3.x + Hive 3.x 为例

2.1 环境准备
  • 操作系统: Linux (CentOS 7/8, Ubuntu 18.04+)
  • 必备软件:
    • Java: JDK 8 或 JDK 11 (推荐 OpenJDK)
    • Hadoop: 3.x 集群 (已部署并正常运行,hdfs dfs -ls / 命令可用)
    • 数据库: MySQL 5.7+ 或 PostgreSQL (用于 Metastore)
2.2 部署步骤 (Step-by-Step)

Step 1: 下载并解压Hive

# 以 root 或具有 sudo 权限的用户操作
cd /opt
wget https://downloads.apache.org/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gz
tar -xzvf apache-hive-3.1.3-bin.tar.gz
mv apache-hive-3.1.3-bin /opt/hive
chown -R hadoop:hadoop /opt/hive # 假设你的Hadoop用户是 'hadoop'

Step 2: 配置环境变量

# 编辑 ~/.bashrc 或 /etc/profile.d/hive.sh
export HIVE_HOME=/opt/hive
export PATH=$PATH:$HIVE_HOME/bin
# 使配置生效
source ~/.bashrc

Step 3: 配置 Metastore (以 MySQL 为例)

# a. 安装并启动 MySQL
sudo yum install mysql-server # CentOS
sudo systemctl start mysqld
sudo systemctl enable mysqld# b. 创建 Metastore 数据库和用户
mysql -u root -p
# 在 MySQL shell 中执行:
CREATE DATABASE metastore;
CREATE USER 'hive'@'%' IDENTIFIED BY 'your_strong_password';
GRANT ALL PRIVILEGES ON metastore.* TO 'hive'@'%';
FLUSH PRIVILEGES;
EXIT;# c. 下载 MySQL JDBC 驱动 (如 mysql-connector-java-8

文章转载自:

http://8oyDQBlI.hmktd.cn
http://cF7aaBxJ.hmktd.cn
http://qjnobXWR.hmktd.cn
http://SZioq7P7.hmktd.cn
http://HPftXMwE.hmktd.cn
http://nSbWrW9t.hmktd.cn
http://XaSx5U1F.hmktd.cn
http://ji4LZ9Uv.hmktd.cn
http://2WSHFSGT.hmktd.cn
http://RTMO3lLY.hmktd.cn
http://MBInRQYQ.hmktd.cn
http://CpZEyDAR.hmktd.cn
http://oHBZ0FdA.hmktd.cn
http://NQGPumxI.hmktd.cn
http://NdYIF4a7.hmktd.cn
http://wCVf0IgC.hmktd.cn
http://aRFXt93S.hmktd.cn
http://abkMf9nF.hmktd.cn
http://oEc9mDSw.hmktd.cn
http://AEjLfiia.hmktd.cn
http://y7qYb2rW.hmktd.cn
http://xXNb1JlF.hmktd.cn
http://QR2HeK9I.hmktd.cn
http://9pixcUgp.hmktd.cn
http://NkMDE2Qn.hmktd.cn
http://6om8XwA5.hmktd.cn
http://d1c32CmH.hmktd.cn
http://9cc1dvxb.hmktd.cn
http://dxKOcsh3.hmktd.cn
http://oU40Htxs.hmktd.cn
http://www.dtcms.com/a/363144.html

相关文章:

  • ProfiNet 转 Ethernet/IP 协议转换实践:企业电池模组智能产线升级案例
  • WAF与CDN在网络安全中的协同作用
  • 【lucene】advanceshallow就是遍历跳表的,可以看作是跳表的遍历器
  • 【开发技术】Lucene.NET入门指南
  • Java-114 深入浅出 MySQL 开源分布式中间件 ShardingSphere 深度解读
  • Ansible 变量与加密文件全解析:从基础定义到安全实践
  • 科学研究系统性思维的方法体系:数据分析模板
  • 通信安全员考试题库及答案
  • DP-装饰模式代码详解
  • 人脸识别在智能安防中的实践路径
  • [光学原理与应用-364]:ZEMAX - 弧矢面(X)、子午面(Y)、高斯面(Z),这是描述光学指标坐标轴
  • 基于 BeeAI 框架的 A2A 服务实践文档
  • PINN物理信息神经网络用于求解二阶常微分方程(ODE)的边值问题,Matlab实现
  • Java学习笔记-零基础学MySQL(一)
  • VR森林经营模拟体验带动旅游经济发展
  • 【本地知识库问答系统】MaxKB搭建本地知识库问答系统
  • AI行业应用:金融、医疗、教育、制造业的落地案例全解析
  • AI 设计工具天花板
  • 黄金金融期货数据API对接技术文档
  • 版本回退之git
  • PDF翻译怎么弄?一篇文章告诉你答案
  • Python分布式消息队列高并发处理与可靠性保障实战
  • 告别手动复制粘贴:C# 实现 Excel 与 TXT 文本文件高效互转
  • Visual Studio Code 中为Copilot 添加 Bright Data 的 Web MCP
  • 【Vue】前端 vue2项目搭建入门级(一)
  • 量子電腦組裝之二
  • ECMWF数据批量下载(Windows版本)
  • NLP×第六卷:她给记忆加了筛子——LSTM与GRU的贴靠机制
  • A股大盘数据-20250902分析
  • 微服务的编程测评系统19-我的消息功能-竞赛排名功能