初识HIVE

Hive是构建在hadoop之上的数据仓库。不是用来增删改查的那种数据库,那是数据库。

  1)数据计算是MapReduce

  2)数据存储是HDFS 

 

 

认识 Hive

       Hive 是基于 Hadoop 构建的一套数据仓库分析系统,它提供了丰富的 SQL 查询方式来分析存储在 Hadoop  分布式文件系统中的数据, 可以将结构化的数据文件映射为一张数据库表,并提供完整的 SQL 查询功能,可以将 SQL 语句转换为 MapReduce 任务进行运行,通过自己的 SQL 去 查询分析需要的内容,这套 SQL 简称 Hive SQL,使不熟悉 MapReduce 的用户很方便地利用 SQL 语言查询、汇总、分析。核心仍然是mapreduce作业

 

 

Hive常见的应用场景

  1、日志分析

      1)统计网站一个时间段内的pv、uv

      2)从不同维度进行数据分析

  2、海量结构化数据离线分析

 

 

Hive的优点

  1、简单容易入手

  2、它是为超大数据集而设计的计算和扩展能力

  3、提供统一的元数据管理

 

 

Hive的缺点

  1、Hive的HQL的表达能力有限

      1)迭代式算法无法表达,比如pagerank。

      2)数据挖掘方面,比如kmeans。

  2、Hive的效率比较低

      1)hive自动生成的MapReduce作业,通常情况下不够智能化。

      2)hive调优比较困难

      3)hive可控性比较差

 

 

 

Hive的基本框架

  

 

  

  

 

 

 

 

Hive的组成部分

  1、用户接口

       CLI、JDBC/ODBC、WebUI

  2、元数据存储(MetaStore)

       默认derby数据库,真实环境一般使用mysql数据库

  3、驱动器(Driver)

       解释器、编译器、优化器、执行器

  4、hadoop分布式集群

      利用MapReducer分布式计算,利用HDFS分布式存储

 

 

 

Hive工作原理

  

  MapReduce 开发人员可以把自己写的 Mapper 和 Reducer 作为插件支持 Hive 做更复杂的数据分析。 它与关系型数据库的 SQL 略有不同,但支持了绝大多数的语句(如 DDL、DML)以及常见的聚合函数、连接查询、条件查询等操作。

  Hive 不适合用于联机(online) 事务处理,也不提供实时查询功能。它最适合应用在基于大量不可变数据的批处理作业。Hive 的特点是可 伸缩(在Hadoop 的集群上动态的添加设备),可扩展、容错、输入格式的松散耦合。Hive 的入口是DRIVER ,执行的 SQL 语句首先提交到 DRIVER 驱动,然后调用 COMPILER 解释驱动, 最终解释成 MapReduce 任务执行,最后将结果返回。



作者:大数据躺过的坑
出处:http://www.cnblogs.com/zlslch/


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值