Hadoop基础教程-第11章 Hive:SQL on Hadoop(11.1 Hive 介绍)(草稿)

第11章 Hive:SQL on Hadoop

11.1 Hive 介绍

11.1.1 为什么需要Hive?

Hadoop的出现,正如当年Java语言的出现,得到了极大的关注和广泛应用。Hadoop及其生态圈提供了一个成熟高效的处理大数据的解决方案。然而,一个问题出现:开发人员如何从现有的基于关系数据库的数据架构转移到Hadoop上呢?对于熟悉SQL技术的人员,编写专业的MapReduce程序并非易事。实际上,对于一个简单的问题,在原有关系数据库基础上只需一个简单的SQL语句即可解决,而转移到Hadoop上后需要编写复杂的MapReduce程序。Hive的出现就是来解决这个问题,Hive让那些精通SQL而Java技术相对薄弱的数据分析师能够利用Hadoop进行各种数据分析。

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。 在Hadoop生态圈中还有一个Pig组件,作用与Hive类似,但是Pig提供的不是SQL接口,而是一种叫做Pig Latin的语言接口,增加了学习成本。所以Pig没有Hive这么流行了。

在实际开发中,80%的操作都不会直接由MapReduce程序完成,而是由Hive来完成。所以说Hive实践性、使用频率非常高,不需要高深的理论,只需熟悉SQL即可。掌握Hive对于使用Hadoop来说至关重要。

11.1.2 Hive架构

简单地说,Hive底层存储使用了HDFS,查询语句转变为MapReduce作业。

与Hadoop的HDFS和MapReduce计算框架不同,Hive并不是分布式架构,它独立于集群之外,可以看做一个Hadoop的客户端。我们可以通过CLI(命令行接口)、Web GUI(Web接口)以及Thrift Server提供的JDBC或ODBC方式访问Hive,其中最常用的是命令行接口。 用户通过以上方式向Hive提交查询命令,命令进入Driver模块后进行解释和编译,SQL优化,然后生成执行计划,执行计划将查询分解为若干个MapReduce作业。

11.1.3 Hive特点

Hive 已是目前业界最为通用、廉价的构建大数据时代数据仓库的解决方案。 (1) Hive 最大的特点是 Hive 通过类 SQL 来分析大数据,而避免了写 MapReduce Java 程序来分析 数据,这样使得分析数据更容易。 (2) 数据是存储在 HDFS 上的,Hive 本身并不提供数据的存储功能 (3) Hive 是将数据映射成数据库和一张张的表,库和表的元数据信息一般存在关系型数据库上 (比如 MySQL)。 (4) 数据存储方面:他能够存储很大的数据集,并且对数据完整性、格式要求并不严格。 (5) 数据处理方面:不适用于实时计算和响应,使用于离线分析。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏钱塘大数据

一图简述大数据技术生态圈

1、HBase   是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化数据集群。像Face...

2968
来自专栏人工智能LeadAI

想玩转工业界机器学习?先学Spark吧

为什么机器学习者需要学习spark? 关于大数据,有这样段话: “Big data is like teenage sex,everyone talks abo...

4199
来自专栏Albert陈凯

Impala 与Hive

Impala 与Hive都是构建在Hadoop之上的数据查询工具,但是各有不同侧重,那么我们为什么要同时使用这两个工具呢?单独使用Hive或者Impala不可以...

3936
来自专栏Albert陈凯

值得拥有 不容错过的Hive精华汇总

Hive作为Hadoop家族的重要一员,具有学习成本低,开发者可通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用。在攒...

1953
来自专栏包子铺里聊IT

五分钟深入 Hadoop 内核

前一篇系列文章 <五分钟零基础理解 Hadoop> 介绍了 Hadoop 到底是怎么回事。下面几篇文章介绍 Hadoop 的核心框架, 为后面讨论 Hadoo...

2105
来自专栏学一学大数据

写给大数据开发初学者的话 | 附教程

2494
来自专栏AI星球

想玩转工业界机器学习?先学Spark吧

作为一名学生,如何还没听说过Spark这套计算框架,那么我觉得还是留在学术界的机器学习混吧,工业界现在也许还不适合你。

892
来自专栏Albert陈凯

1.1.2 Spark生态

1.1.2 Spark生态 Spark大数据计算平台包含许多子模块,构成了整个Spark的生态系统,其中Spark为核心。 伯克利将整个Spark的生态系统称...

3385
来自专栏灯塔大数据

每周学点大数据 | No.70 适于迭代并行计算的平台——Spark初探

编者按:灯塔大数据将每周持续推出《从零开始学大数据算法》的连载,本书为哈尔滨工业大学著名教授王宏志老师的扛鼎力作,以对话的形式深入浅出的从何为大数据说到大数据算...

3506
来自专栏挖掘大数据

大数据初学者该如何快速入门?

很多人都知道大数据很火,就业很好,薪资很高,想往大数据方向发展。但该学哪些技术,学习路线是什么样的呢?用不用参加大数据培训呢?如果自己很迷茫,为了这些原因想往大...

1.3K6

扫码关注云+社区