菜鸟先飞之初识Hive、安装教程及常见问题

一、初识Hive

1、什么是Hive?

Hive是基于Haddop的数据仓库工具,可以将结构化的数据文件映射为一张数据库表并提供SQL查询功能,可以将SQL语句转换

MapReduce任务运行。

Hive提供了一系列的工具,可以给用来数据提取转换加载(ETL)是一种存储、查询和分析存储在Hadoop中的大规模数据的机制

 

2、Hive发展历史及版本

2007年8月 – 始于Facebook

2013年5月 – 0.11 Stinger Phase 1 ORC HiveServer2

2013年10月 – 0.12.0 Stinger Phase 2 - ORC improvement

2014年4月 – Hive 0.13.0 as Stinger Phase 3

2014年11月 – Hive 0.14.0

2015年2月 – Hive 1.0.0

2015年5月 – Hive 1.2.0 (1.2.1 本系列课实验重点版本 )

2016年2月 – Hive 2.0.0 (添加 HPLSQL, LLAP)

2016年6月 – Hive 2.1.0 (2.1.0 本系列课实验补充版本 )


3、为什么要使用Hive

提供了一个简单的优化模型

HQL类SQL语法,简化MR开发

支持在不同的计算框架上运行

支持在HDFS和HBase上临时查询数据

支持用户自定义函数、格式

成熟的JDBC和ODBC驱动程序,用于ETL和BI

稳定可靠(真实生产环境)的批处理

有庞大活跃的社区

 

4、Hive体系架构

 Hive的体系结构分以下几个部分

1)用户接口主要是3个:CLI,Client,HWI(Hive Web Interface)

2)Hive将元数据存储在数据库中,如MySQL、Derby。

3)解释器、编译器、优化器完成HQL查询语句从词法分析、语句分析、编译、优化到查询计划的生成。生成的查询计划存储在HDFS中,随后由MapReduce调用执行。
4)Hive的数据存储在HDFS中,大部分的查询、计算由MapReduce完成(注意 含*的查询,例如:select * from tbl 不会生成 MapReduce任务)

 

5、Hive与传统数据库

 

6、交互模式

 

7、Hive数据类型

1)原始数据类型(类似于SQL数据类型)

 2)复杂数据类型

   * ARRAY:存储的数据为相同类型
   * MAP:具有相同类型的键值对
   * STRUCT:封装了一组字段

 

8、Hive元数据结构

 

9、Hive数据表

分为内部表和外部表

1)  内部表(管理表)

       HDFS中为所属数据库目录下的子文件夹

       数据完全由Hive管理,删除表(元数据)会删除数据

2)外部表(External Tables)

       数据保存在指定位置的HDFS路径中

       Hive不完全管理数据,删除表(元数据)不会删除数据

 

10、Hive建表语句

create table student if not exists (

id int,

name string)

row format delimited fields terminated by ','

location &#

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值