Hive基础知识

一、产生背景

1.MapReduce编程十分不方便

2.传统RDBMS【关系数据库管理系统(Relational Database Management System)】人员的需求:如果能用SQL来处理大数据是极其方便的

基于以上两个背景,Hive应运而生

二、Hive是什么

Hive :  SQL   on   Hadoop   

官网 :  hive.apache.org

The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto data already in storage. A command line tool and JDBC driver are provided to connect users to Hive.

Hive是一种使用SQL进行读,写和管理分布式存储的大型数据集的数据仓库软件(实时、离线)。结构可以投影到存储中的数据上。提供命令行工具和JDBC驱动程序给用户用来连接Hive。

Hive是构建在hadoop之上的数据仓库

HDFS:存储

MapReduce、Tez、Spark:执行引擎

Hive  QL/HQL: 类SQL

输入SQL通过Hive转换为MapReduce、Tez、Spark作业运行

三、Hive的发展历程

2007/08:facebook

2013/05:0.11.0   Stinger(代号)第一阶段  提出ORC(存储格式)  HiveServer2

2013/10:0.12.0  Stinger                第二阶段  ORC inprovement

2014/04:0.13.0  Stinger                第二阶段  Vectorized query engine   Tez执行引擎

2014/11:0.14.0  Stinger.next         第一阶段  Cost-based optimizer(CBO)

2015/01:1.0.0  ...

四、Hive的特点

1.简单易用

2.扩展性好   HDFS存储和MapReduce运行资源的增减比较灵活

3.统一的元数据(meta/schema)管理:MySQL/Derby

database/table/column/location

好处:使用Spark、Impala、Presto等工具时都能访问到元数据,即共享元数据

五、Hive体系架构

六、部署架构

本地不一定要有MySQL,也可以是远程的

访问MySQL必备的条件:驱动driver、url、username、password

七、Hive  和   RDBMS的异同点

同:都写sql

异:RDBMS实时性比较好

Hive实时性差,延时性高,处理时间长,适用于离线数据

你可能感兴趣的:(Hive基础知识)