Hive
# Hive
# 了解窗口函数嘛
tag:
携程count:1
as:
# hive join
tag:
count:1
as:hive join 的几个方式,说明其原理
# Hive Spark 优化
tag:
count:2
as:Hive Spark 优化掌握的怎么样?
Hive 的优化举例?
hive 的 sql 脚本优化
# hive 原理
tag:
count:5
as:hive sql 转换为 mr 的过程
Hive 的计算过程
hivesql 底层执行过程和原理
Hive 介绍,原理?Hsql 转换到 MR 的过程?
hive 的逻辑架构
# hive 内部表和外部表
tag:
count:2
as:Hive 分区怎么存储?
# 分区和动态分区
- 分区:将数据按照分区字段拆分存储的表,在 hdfs 中以文件夹的形式分别存放不同分区的数据,可以避免全表 查询,提高查询效率。
- 动态分区 hive 通过设置 set hive.exec.dynamic.partition.mode=nonstrict 开启动态分区。
- 动态分区:可以在插入数据时根据表中某字段值决定分区,当分区字段完全由变量决定时称为动态分区,若有常量
# hive 数据倾斜
tag:
count:1
as:
# Hive 的文件存储格式
tag:
count:1
as:
- TextFile:默认格式,按行存储,可以压缩但压缩文件不支持分片,反序列化开销是 SequenceFile 的几十倍 (需要 判断分隔符和换行符)
- ORC file:RC 的改良版,每个 Task 输出单文件、存储索引、支付复杂类型、支持块压缩、可以直接读取,ORC 比 RC 高效很多
- Parquet:列式存储,是 spark 的默认存储格式,压缩和查询性能比 ORC 稍差,但是支持的编码更多,而且对嵌套 式结构支持的更好 (json)。因此对结构化数仓来说 ORC file 格式更好,对灵活的 spark 作业来说 Parquet 格式更好。
编辑 (opens new window)
上次更新: 2025/01/01, 10:09:39