Hive单机安装(元数据采用derby)

本文详细介绍如何在Linux环境下下载并安装Hive 2.0.1版本, 包括环境变量配置、配置文件修改及数据库初始化等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、下载hive源文件

      https://archive.apache.org/dist/hive/hive-2.0.1/


2、通过FTP将hive源文件上传到Linux服务器


3、解压缩

      tar -zxvf apache-hive-2.0.1-bin.tar.gz


4、重命名

     mv apache-hive-2.0.1-bin hive


5、配置环境变量

     export HIVE_HOME=/usr/local/software/hive

     export PATH=$PATH:$HIVE_HOME/bin


6、修改配置文件

     cd $HIVE_HOME/conf

     vi hive-site.xml


7、在hive-site.xml中添加如下内容

     


8、初始化数据库

     schematool  -initSchema –dbType –derby

    


9、启动程序

      mkdir –p /usr/local/software/hive/warehouse
      chmod a+rwx /usr/local/software/hive/warehouse
      cd bin
      hive




### Hive元数据存储结构 Hive元数据Hive数据仓库的核心部分之一,用于描述数据的逻辑和物理特性。其主要功能包括定义数据库、表、分区、列以及其他相关属性的信息[^1]。这些元数据通常被存储在一个外部的关系型数据库管理系统(RDBMS)中,并由Metastore服务负责管理和访问。 #### 数据库与表的定义 Hive中的元数据包含了多个层次的数据对象定义: - **数据库**:类似于传统关系型数据库的概念,用来组织不同的命名空间。 - **表**:表示具体的数据集合,包含表名、所属数据库、字段列表等基本信息。 - **分区**:为了优化查询效率而引入的一种机制,允许按照某些维度分割大表成更小的部分。 - **列**:每一列都有自己的名称、类型和其他附加参数说明。 此外还有关于文件格式、压缩编码方案等方面的内容也属于元数据范畴之内[^2]。 ### 元数据管理方式 目前主流的支持方法如下: 1. **嵌入式模式**: 默认情况下,Hive 使用 Derby SQL 轻量级单机版作为内部默认实现形式,适合小型应用测试环境. 2. **远程独立部署的服务化架构(Metastore)**: 当集群规模扩大时推荐切换至此选项; 它可以单独运行作为一个进程并与客户端通信完成操作请求处理流程. 3. **第三方工具集成**, 如 Apache Atlas 提供血缘追踪等功能扩展支持[^2]. 特别值得注意的是,在实际生产环境中往往会选择像 MySQL 这样的强大 RDBMS 来承载整个系统的持久层需求[^3]. 以下是将 Hive 的 Metastore 存储迁移到 MySQL 上的一个典型配置过程概述: ```bash # 创建一个新的名为 'hive' 的 schema 并赋予相应权限给指定用户账户; CREATE DATABASE hive CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; GRANT ALL PRIVILEGES ON hive.* TO 'hive_user'@'%' IDENTIFIED BY '<password>'; FLUSH PRIVILEGES; # 把 mysql-connector-java-x.x.xx.jar 文件复制到 $HIVE_HOME/lib 下面去; cp /path/to/mysql-connector-java*.jar ${HIVE_HOME}/lib/ # 修改 guava 版本使之匹配 hadoop 所需版本号 (如果存在冲突的话); mvn dependency:tree | grep guava # 查看当前使用的 Guava 库版本信息 rm lib/guava-old-version.jar && ln -s new-guava-jar-file-path ./lib/ # 编辑或者创建新的 site xml 配置文档以启用自定义设置项: <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&useSSL=false</value> </property> <!-- Other properties omitted --> </configuration> # 启动 schematool 工具初始化目标 DB 结构布局并验证连接状态正常与否: ${HIVE_HOME}/bin/schematool -dbType mysql -initSchema ``` 以上脚本展示了如何把现有的 Hive 设置调整为利用外部托管解决方案保存关联记录的过程概览[^3]。 相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值