Hive基础

一、Hive的历史价值

    1.Hive是Hadoop上的Killer Application,Hive是hadoop上的数据仓库,Hive同时 兼具有数据仓库的存储引擎和查询引擎的作用,而SparkSQL是一个更加出色和高级的查询引擎,所以现在在企业级应用中SparkSQL+Hive成为了业界使用大数据最为高效和流行的趋势。
    2.Hive是Facebook退出,主要是为了让不懂Java的编程语言的人员也能够通过SQL来驾驭hadoop集群进行分布式数据的多维度分析,甚至可以只通过web页面来直接操作Hive(通过Hive来驾驭hadoop)对于市场营销人员、系统管理员、数据分析师至关重要;
    3.Hive的核心是把Hive自己的SQL语言即HQL翻译成MapReduce代码,然后交给hadoop集群执行,也就是说Hive本身是一个单机版本的软件;
    4.由于是通过写HQL来完成也无需求的,所以对编译MapReduce而言,非常简易灵活,能够非常轻易的满足业务的需求和多变的场景;
    5.Hive几乎存在以一切适应大数据的公司中

二、Hive的架构设计

    1.Hive的架构如下

    2.Hive中的数据只是元数据,所谓元数据就是Hive要操作的数据的描述信息,该Metastrore默认存储在Derby中,当Derby不能被生产环境下的多用户去使用,所以生产环境下一般常用的使用MySQL来存储Hive的元数据
    3.Hive要操作的数据是由Hive的配置环境文件来决定的,生产环境下该数据位于HDFS上(其实就是HDFS上的普通文件而已,只不过是要按照Hive的方式进行组织的);
    4.从Hive的角度来看,数据就是一张张的table,我们的操作就是基于SQL的多维度的查询Table;
    5.我们一直努力使用Hive来取代传统的数据仓库,所以是以失败告终,因为Hive太慢了,所以业界目前的趋势上黄金组合是Hive(数据仓库的存储引擎)+SparkSQL(分析查询引擎);
    6.HQL会被Hive解释优化并生成查询计划,一般情况而言查询计划会被转化为MapReduce任务
    7.但是形如select * from table不会转化成为MapReduce任务;
    8.Hive没有索引

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值