
Hive
Hive面试题汇总
棱镜7
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Hive优化
1. 行列过滤在使用外关联时 join + where =》where + join 防止全表关联少用select * 尽量分区过滤2. 替换计算引擎mr 基于磁盘 可靠性高 效率低 数据量较大,计算时间长(周月年)tez 基于内存 可靠性差 效率高 临时调试使用,即席查询spark 基于内存+磁盘 居中 居中 每天的定时任务3. 创建分区表(天)4. 小文件处理hive小文件处理5. 压缩降低网络传原创 2022-05-29 15:06:51 · 110 阅读 · 0 评论 -
为什么要数据分层
用空间换时间,通过大量的预处理来提升应用系统的效率,因此数据仓库会存在大量的冗余数据。通过数据分层管理可以简化数据清洗过程,相当于把一个复杂的工作拆成了多个简单的工作,当数据发生错误的时候,往往我们只需要局部调整某个步骤即可。如果不分层的话,如果原业务系统发生变化会影响整个数据清洗过程,工作量巨大...原创 2022-05-29 12:30:46 · 472 阅读 · 0 评论 -
数据建模有哪些模型
目录1. 星型模型2. 雪花模型3. 星座模型1. 星型模型 星型模型是最常用的维度建模方式。星型模型是以事实表为中心,所有维度表直接连接在事实表上。星型模型由一个事实表和一组维度表组成。2. 雪花模型雪花模式(Snowflake Schema)是对星形模式的扩展。雪花模式的维度表可以拥有其他维度表的,虽然这种模型相比星型更规范一些,但是由于这种模型不太容易理解,维护成本比较高,而且性能方面需要关联多层维表,性能比星型模型要低。3. 星座模型星座模式是星型模式延伸而来,星型模式是基于一原创 2022-05-29 12:24:16 · 1252 阅读 · 0 评论 -
解决小文件处过多
文章目录1. 使用hive自带的concatenate命令,自动合并小文件2. 调整参数减少map数量3. 减少Reduce的数量4. HAR归档5. jvm重用1. 使用hive自带的concatenate命令,自动合并小文件使用方法:2. 调整参数减少map数量在执行map前进行小文件合并,在 mapper 中将多个文件合成一个 split 作为输入。调整split 的至少大小3. 减少Reduce的数量reduce 的个数决定了输出的文件的个数,所以可以调整 reduce 的个数控制原创 2022-05-29 11:54:05 · 527 阅读 · 0 评论 -
Hive数据倾斜
目录数据倾斜问题数据倾斜解决方案1. 空值引发的数据倾斜2. 不同数据类型引发的数据倾斜3. 不可拆分大文件引发的数据倾斜4. 确实无法减少数据量引发的数据倾斜数据倾斜问题发生数据倾斜的原因有两种:一是任务中需要处理大量相同的key的数据。二是任务读取不可分割的大文件。 1. 在map和reduce两个阶段中,最容易出现数据倾斜的就是reduce阶段,因为map到reduce会经过shuffle阶段,在shuffle中默认会按照key进行hash,如果相同的key过多,那么hash的结果就是大量相同翻译 2022-05-27 23:15:29 · 369 阅读 · 0 评论 -
Hive 索引
Hive 支持索引(3.0 版本之前),但是 Hive 的索引与关系型数据库中的索引并不相同,比如,Hive 不支持主键或者外键。并且 Hive 索引提供的功能很有限,效率也并不高,因此 Hive 索引很少使用。索引适用的场景: 适用于不更新的静态字段。以免总是重建索引数据。每次建立、更新数据后,都要重建索引以构建索引表。...原创 2022-05-27 22:51:05 · 503 阅读 · 0 评论 -
Hive常用函数
文章目录1.自定义UDF、UDTF函数1.1 udf1.2 udtf2.系统函数3. 窗口函数1.自定义UDF、UDTF函数1.1 udf在项目中解析公共字段1.2 udtf在项目中解析事件字段2.系统函数加减日期:date_add、date_subDATE_ADD/DATE_SUB(date,INTERVAL expr type)// date是指定的日期,INTERVAL为关键词,expr是具体的时间间隔,type是时间单位。SELECT DATE_add(NOW(),INT原创 2022-05-19 10:27:43 · 147 阅读 · 0 评论 -
排序4个by
文章目录1.order by2.sort by3.distribute by4.cluster by5.总结(1) OOM(内存溢出)1.order by全局排序,只有一个Reducer2.sort by分区内有序3.distribute by类似MR中partition,进行分区结合sort by使用4.cluster by当distribute by和sort by字段相同时,可以使用cluster by方式;但排序只能是升序排序,不能指定排序规则为asc或desc在生产环境中or原创 2022-05-18 19:54:10 · 238 阅读 · 0 评论 -
Hive内部表与外部表的区别
本质是元数据和原始数据删除数据时: 内部表:原始数据元数据全删除。 外部表:只删除元数据。一般绝大部分创建外部表,自己使用的临时表,才会创建内部表。原创 2022-05-18 19:35:28 · 106 阅读 · 0 评论 -
Hive架构
客户端(jdbc)Hive元数据默认存储在derby数据库(只支持单客户端访问),一般使用mysql数据库(支持多客户端访问)metadata即元数据。包括database、table、column names、partitions信息等元数据信息。元数据默认存储在derby中,建议存储在关系型数据库中。底层驱动引擎(Driver)主要包含:解析器:将sql字符串转换为抽象语法树编译器:生成逻辑执行计划优化器:对逻辑执行计划优化执行器:将逻辑执行计划转成可执行的物理计划Hive ..原创 2022-05-18 14:34:48 · 594 阅读 · 0 评论 -
Hbase vs RDBMS vs Hive
文章目录1、什么是metedata2、Hbase vs RDBMS vs Hive2.1 OLTP与OLAP2.2 ACID1、什么是metedatametadata即元数据。包括database、table、column names、partitions信息等元数据信息。元数据默认存储在derby中,建议存储在关系型数据库中。2、Hbase vs RDBMS vs HiveHiveMysqlHbase存储数据依赖HDFS本地文件系统;采用行存储模式,底层是binlog原创 2022-05-18 12:55:15 · 386 阅读 · 0 评论