博客 Hive:基于Hadoop的数据仓库

Hive:基于Hadoop的数据仓库

   数栈君   发表于 2023-07-25 16:30  263  0

Hive 具有 SQL 数据库的外表,但应用场景完全不同, Hive 只适合用来做批量海量数据统计分析,也就是数据仓库。

Hive 是基于 Hadoop 的一个数据仓库工具,实质就是一款基于 HDFS 的 MapReduce 计算框架,因为Hive 依赖于 HDFS 存储数据,将 HQL 转换成 MapReduce 执行

http://dtstack-static.oss-cn-hangzhou.aliyuncs.com/2021bbs/files_user1/article/28e025d20aed86b70473ae257d244772..jpg

Hive优缺点如下:

优点:Hive作为一个基于Hadoop的数据仓库工具,提供了简单的SQL查询功能,简化了MapReduce的编写操作,适用于大数据集的批量处理作业,例如,网络日志分析。

缺点:Hive的HQL表达能力有限,对于较复杂的运算HQL不易表达;另外,Hive具有高延迟性,不适合那些低延迟的应用,如:OLTP系统。它不提供实时的查询和基于行级的数据更新操作

http://dtstack-static.oss-cn-hangzhou.aliyuncs.com/2021bbs/files_user1/article/7a2bbfabd53d13419d73a70b78cc7a76..jpg

Hive的核心,负责SQL语句的语法、语义解析,生成查询计划用户提交SQL给Hive,由Driver负责解析SQL,在解析时会加载相关的元数据信息,生成执行计划,生成Job交给Hadoop运行,然后Driver将结果返回给用户

HQL 通过命令行或者客户端提交,经过 Compiler 编译器,运用 MetaStore 中的元数据进行类型检测和语法分析,生成一个逻辑方案(logical plan),然后通过优化处理,产生一个 MapReduce 任务

  • 那什么是元数据,元数据存储又是什么?

  1. 1)元数据是什么?

存储在Hive中的数据的描述信息----数据结构(数据集的名称、关系、字段、约束等)的描述

  1. 2)有哪些?

表的名、表的列和分区以及属性(内部表和外部表)、表的数据所在目录

  1. 3)存在哪儿?

自带数据库Derby。缺点:不适合多用户操作,并且数据存储目录不确定

  1. 4)解决方案

存在自己创建的MySQL中(本地或远程)

免责申明:

本文系转载,版权归原作者所有,如若侵权请联系我们进行删除!

《数据治理行业实践白皮书》下载地址:https://fs80.cn/4w2atu

《数栈V6.0产品白皮书》下载地址:https://fs80.cn/cw0iw1

想了解或咨询更多有关袋鼠云大数据产品、行业解决方案、客户案例的朋友,浏览袋鼠云官网:https://www.dtstack.com/?src=bbs

同时,欢迎对大数据开源项目有兴趣的同学加入「袋鼠云开源框架钉钉技术群」,交流最新开源技术信息,群号码:30537511,项目地址:

https://github.com/DTStack


0条评论
社区公告
  • 大数据领域最专业的产品&技术交流社区,专注于探讨与分享大数据领域有趣又火热的信息,专业又专注的数据人园地

最新活动更多
微信扫码获取数字化转型资料
钉钉扫码加入技术交流群