Titan笔记

  • 首页
  • Java
  • 数据结构
  • Web
  • C语言
  • Python
  • 杂谈
  • 逸笔挥墨
Titan笔记
分享学习、研究与开发过程中的点滴记忆
  1. 首页
  2. 大数据
  3. Hive
  4. 正文

Apache - Hive环境部署与快速入门

2020年8月4日 518点热度 1人点赞 0条评论
  • Title : Apache-Hive
  • Author: Titan
  • Start Time: 2020.07.26

1. 什么是Hive

Hive:由 Facebook 开源用于解决海量结构化日志的数据统计。 Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类 SQL 查询功能。 也就是说,Hive提供了一种类SQL的HQL语言,方便你进行编写一些数据处理的东西,最终将 HQL 转化成 MapReduce 程序

2. Hive的安装记录

Hive的安装相对Hadoop来说比较容易,这里使用的是hive-1.2.2版本

首先:将 apache-hive-1.2.2-bin.tar.gz 上传到机器中并解压

修改/opt/module/hive/conf 目录下的 hive-env.sh.template 名称为 hive-env.sh

配置 hive-env.sh 文件,在下面加入以下配置:

export HADOOP_HOME=/opt/hadoop-2.10.0
export HIVE_CONF_DIR=/opt/apache-hive-1.2.2-bin/conf

启动Hadoop集群,然后在 hive安装目录下的bin目录中,运行hive二进制文件,即可启动hive。

3. Hive的基本操作

(1)启动 hive bin/hive

(2)查看数据库 hive> show databases;

(3)打开默认数据库 hive> use default;

(4)显示 default 数据库中的表 hive> show tables;

(5)创建一张表 hive> create table student(id int, name string);

(6)显示数据库中有几张表 hive> show tables;

(7)查看表的结构 hive> desc student;

(8)向表中插入数据 hive> insert into student values(1000,"ss");

(9)查询表中数据 hive> select * from student;

(10)退出 hive hive> quit;

4. 将数据导入Hive中

(1) 将本地文件数据导入到Hive中

  • 创建一个student.txt文件,内容如下(每行数据以制表符分割)
1	Titan
2	Goodman
3	Mike
4	Workman
5	Walkman
  • 显示当前的所有数据库

hive> show databases;

  • 使用 default 数据库

hive> use default;

  • 创建 student 表, 并声明文件分隔符 '\t'

hive> create table student(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';

  • 加载student.txt 文件到 student 数据库表中

load data local inpath 'student.txt' into table student;

  • Hive 查询结果
hive> SELECT * FROM student;
OK
1       Titan
2       Goodman
3       Mike
4       Workman
5       Walkman

(2) 将HDFS中的数据导入到Hive中

将HDFS中的数据导入到Hive中和上述本地数据的导入方式并无太大差异。

  • 将数据文件上传到HDFS中:hdfs dfs put student.txt /
  • 将HDFS中的数据导入到Hive中,只需要将 load语句的local删去即可:load data inpath '/student.txt' into table student;

上面两种方式的区别:

本地文件导入到Hive采用的是copy的方式,即源文件将复制一份到HDFS中的hive相应目录,而直接导入HDFS中的数据文件,Hive将修改数据块的元数据,更改其存储路径,类似于“移动”。

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可
标签: Apache-Hive Hive入门 Hive环境部署与快速入门
最后更新:2020年8月11日

Titan

兴趣广泛而无一精擅
想到什么,我总是渴望以代码的方式去呈现
永远年轻,永远热泪盈眶
Stay Hungry, Stay Foolish

点赞
下一篇 >

文章评论

取消回复

Titan

兴趣广泛而无一精擅
想到什么,我总是渴望以代码的方式去呈现
永远年轻,永远热泪盈眶
Stay Hungry, Stay Foolish

逸笔挥墨 - Titan的文学天地
文章分类
  • C语言 (4)
  • Hadoop (1)
  • Hive (3)
  • Java (19)
  • JavaWeb (4)
  • Linux运维之道 (1)
  • Mybatis学习笔记 (3)
  • Python (3)
  • SpringCloud (4)
  • Web (5)
  • Web前端 (4)
  • Web后端 (5)
  • 数据库 (1)
  • 数据结构 (10)
  • 杂谈 (3)
  • 诗词歌赋 (1)
  • 逸笔挥墨 (3)
  • 随摘 (3)
最新 热点 随机
最新 热点 随机
Spring Cloud 微服务学习笔记 - 负载均衡服务调用 Spring Cloud 微服务学习笔记 - Eureka 服务注册与发现 Spring Cloud 微服务学习笔记 - IDEA工程搭建 关于我和Titan笔记 Spring Cloud 微服务学习笔记 - 开篇 TitanEMS - Titan企业员工管理系统 - JavaWeb期末实践项目
Spring Cloud 微服务学习笔记 - 开篇随摘,其一诗摘,其一关于我和Titan笔记《梦之浮桥》中的几句随摘,其二
Titan商店 - 又一个Web静态项目 Java核心技术之动态代理 Spring Cloud 微服务学习笔记 - 开篇 如何在Java中处理JSON [算法] 数组排序 - 冒泡排序法与直接选择排序法 Spring Cloud 微服务学习笔记 - IDEA工程搭建
标签聚合
二叉树 Apache-Hive 链式存储 Mybatis学习笔记 Java 数据结构 JavaWeb Python
友情链接
  • Mttblog

COPYRIGHT © 2016 - 2021 Titan笔记. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

豫ICP备20001822号-1

豫公网安备 41010502004418号