![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hive
文章平均质量分 93
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。
其本质是将SQL转换为MapReduce/Spark的任务进行运算,底层由HDFS来提供数据的存储,说白了hive可以理解为一个将SQL转换为MapReduce/Spark的任务的工具
lz_matlab
这个作者很懒,什么都没留下…
展开
-
Hive大厂面试题
小伙伴们在阅读时注意下,在上面的文章(Hive千亿级数据倾斜解决方案)中,有一处sql出现了上述问题(举例的时候原本是想使用left join的,结果手误写成了join)。:Hive是在0.7版本之后支持索引的,在0.8版本后引入bitmap索引处理器,在3.0版本开始移除索引的功能,取而代之的是2.3版本开始的物化视图,自动重写的物化视图替代了索引的功能。hive在指定列上建立索引,会产生一张索引表(Hive的一张物理表),里面的字段包括:索引列的值、该值对应的HDFS文件路径、该值在文件中的偏移量。原创 2023-04-01 15:33:16 · 90 阅读 · 0 评论 -
Hive存储与压缩
上图展示了一个Parquet文件的内容,一个文件中可以存储多个行组,文件的首位都是该文件的Magic Code,用于校验它是否是一个Parquet文件,Footer length记录了文件元数据的大小,通过该值和文件长度可以计算出元数据的偏移量,文件的元数据中包括每一个行组的元数据信息和该文件存储数据的Schema信息。查询满足条件的一整行数据的时候,列存储则需要去每个聚集的字段找到对应的每个列的值,行存储只需要找到其中一个值,其余的值都在相邻地方,所以此时行存储查询的速度更快。原创 2023-04-01 15:24:49 · 54 阅读 · 0 评论 -
Hive表类型
Hive的基本数据类型有:。Hive的集合类型有:。Hive主要有四种数据模型(即表):内部表、外部表、分区表和桶表。表的元数据保存传统的数据库的表中,当前hive只支持Derby和MySQL数据库。Hive中的内部表和传统数据库中的表在概念上是类似的,Hive的每个表都有自己的存储目录,除了外部表外,所有的表数据都存放在配置在文件的目录下。创建内部表:#2.3 Hive 外部表被external修饰的为外部表(external table),外部表指向已经存在在Hadoop HDFS上的数据,除了在删原创 2023-04-01 15:24:06 · 97 阅读 · 0 评论 -
hive表操作
Hive表的实质是(将超大表的数据按指定标准细分到指定目录),且分区的字段不属于Hive表中存在的字段;的实质是(将超大文件的数据按指定标准细分到分桶文件),且分桶的字段必须在Hive表中存在。需要Hive表分桶的时候,我们可以观察到Reduce的任务数量 = 分桶的数量,也就是最终产生的分桶文件的个数,因为分桶表就是通过MapReduce任务计算而来。由此可见,其实桶的概念就是MapReduce的分区的概念,两者完全相同。原创 2023-04-01 15:18:27 · 215 阅读 · 0 评论 -
Hive SQL底层执行原理
本节结构采用宏观着眼,微观入手,从整体到细节的方式剖析 Hive SQL 底层原理。第一节先介绍 Hive 底层的整体执行流程,然后第二节介绍执行流程中的 SQL 编译成 MapReduce 的过程,第三节剖析 SQL 编译成 MapReduce 的具体实现原理。原创 2023-04-01 15:16:02 · 263 阅读 · 0 评论 -
Hive解析Json数组超全讲解
在Hive中会有很多数据是用Json格式来存储的,如开发人员对APP上的页面进行埋点时,会将多个字段存放在一个json数组中,因此数据平台调用数据时,要对埋点数据进行解析。接下来就聊聊Hive中是如何解析json数据的。结果:namezhangsan如果既要解析name字段,也解析age字段,则可以这样写:但是如果要解析的字段有很多,再这样写就太麻烦了,所以就有了 这个函数。结果:nameagezhangsan18注意:上面的函数中没有原创 2023-04-01 15:14:00 · 2516 阅读 · 6 评论 -
Hive企业级性能优化
Hive作为大数据平台举足轻重的框架,以其稳定性和简单易用性也成为当前构建企业级数据仓库时使用最多的框架之一。但是如果我们只局限于会使用Hive,而不考虑性能问题,就难搭建出一个完美的数仓,所以Hive性能调优是我们大数据从业者必须掌握的技能。本文将给大家讲解Hive性能调优的一些方法及技巧。当我们发现一条SQL语句执行时间过长或者不合理时,我们就要考虑对SQL进行优化,优化首先得进行问题排查,那么我们可以通过哪些方式进行排查呢。经常使用关系型数据库的同学可能知道关系型数据库的优化的诀窍-看执行计划。 如O原创 2023-04-01 15:12:39 · 81 阅读 · 0 评论 -
Hive Sql 大全(hive函数,hive表)
本节基本涵盖了Hive日常使用的所有SQL,因为SQL太多,所以将SQL进行了如下分类: 一、DDL语句(数据定义语句):对数据库的操作:包含创建、修改数据库对数据表的操作:分为内部表及外部表,分区表和分桶表二、DQL语句(数据查询语句):单表查询、关联查询hive函数:包含聚合函数,条件函数,日期函数,字符串函数等行转列及列转行:lateral view 与 explode 以及 reflect窗口函数与分析函数其他一些窗口函数UD。原创 2023-03-04 19:15:20 · 2103 阅读 · 0 评论 -
Hive概览
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。其本质是将SQL转换为MapReduce/Spark的任务进行运算,底层由HDFS来提供数据的存储,说白了hive可以理解为一个将SQL转换为MapReduce/Spark的任务的工具,甚至更进一步可以说hive就是一个MapReduce/Spark Sql的客户端为什么要使用hive?原创 2022-12-19 15:57:22 · 88 阅读 · 0 评论