Gemini永久会员 是一个Hive安装与使用的详细Demo,涵盖安装步骤、基础配置以及简单使用示例
以下是一个Hive安装与使用的详细Demo,涵盖安装步骤、基础配置以及简单使用示例:
### 一、安装准备
1. **环境要求**:
* 已安装Java运行环境(JDK 1.8或更高版本)。
* 已搭建并配置好Hadoop集群(Hadoop 3.x版本推荐)。
* 在Hadoop集群的某个节点上安装MySQL服务(用于存储Hive元数据)。
2. **下载Hive安装包**:
* 从Apache官方网站或镜像站点下载Hive安装包,例如`apache-hive-3.1.2-bin.tar.gz`。
### 二、安装步骤
1. **解压安装包**:
* 将下载的Hive安装包解压到指定目录,例如`/opt/module/`。
* 解压命令:`tar -zxvf apache-hive-3.1.2-bin.tar.gz`。
* 重命名解压后的目录为`hive`:`mv apache-hive-3.1.2-bin hive`。
2. **配置环境变量**:
* 编辑`/etc/profile`文件,添加Hive的环境变量配置。
* 示例配置:
```bash
export HIVE_HOME=/opt/module/hive
export PATH=$PATH:$HIVE_HOME/bin
```
* 使环境变量生效:`source /etc/profile`。
3. **配置Hive核心文件**:
* 进入Hive的配置目录:`cd /opt/module/hive/conf`。
* 编辑`hive-site.xml`文件(若不存在则新建),添加MySQL连接配置。
* 示例配置:
```xml
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://hadoop1:3306/hivedb?createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT</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>root</value> <!-- 修改为你的MySQL账号 -->
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value> <!-- 修改为你的MySQL密码 -->
</property>
<!-- 其他配置项(根据需要添加) -->
</configuration>
```
4. **下载MySQL驱动包**:
* 从MySQL官方网站或Maven仓库下载MySQL JDBC驱动包,例如`mysql-connector-java-8.0.17.jar`。
* 将驱动包复制到Hive的`lib`目录下:`cp mysql-connector-java-8.0.17.jar /opt/module/hive/lib/`。
5. **在MySQL中创建Hive元数据存储库**:
* 登录MySQL:`mysql -uroot -p`。
* 创建数据库:`CREATE DATABASE hivedb;`。
* 授权(可选):`GRANT ALL PRIVILEGES ON hivedb.* TO 'root'@'%'; FLUSH PRIVILEGES;`。
6. **初始化Hive元数据**:
* 进入Hive的`bin`目录:`cd /opt/module/hive/bin`。
* 执行初始化命令:`./schematool -initSchema -dbType mysql`。
### 三、使用Demo
1. **启动Hive**:
* 在Hive的`bin`目录下执行:`./hive`。
* 启动成功后,将进入Hive的命令行界面。
2. **创建表**:
* 在Hive命令行界面中执行:
```sql
CREATE TABLE student (
id INT,
name STRING
) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
```
3. **插入数据**:
* 由于Hive本身不支持直接插入数据(除非使用`INSERT INTO ... VALUES`语法,但此语法在较新版本中才支持且性能较差),通常通过加载文件的方式插入数据。
* 准备一个包含数据的文件,例如`student.txt`,内容如下:
```
1 Alice
2 Bob
```
* 将文件加载到Hive表中:
```sql
LOAD DATA LOCAL INPATH '/path/to/student.txt' INTO TABLE student;
```
4. **查询数据**:
* 在Hive命令行界面中执行:
```sql
SELECT * FROM student;
```
5. **使用Beeline客户端(可选)**:
* 首先启动HiveServer2服务:`nohup ./bin/hiveserver2 >> hiveserver2.log 2>&1 &`。
* 使用Beeline客户端连接HiveServer2服务:
```bash
./bin/beeline -u jdbc:hive2://hadoop1:10000/default -n root
```
* 连接成功后,可以在Beeline客户端中执行与Hive命令行界面相同的SQL语句。
更多推荐


所有评论(0)