Hive 专项练习 9
- Hive和传统数据库相比
- 有类似的查询语言,还是类似的执行器、解释器、计划器
- 并非所有的Hive数据都存储在HDFS上,有部分元数据存储在MySQL上
- Hive针对数据仓库设计,针对的是读多写少的场景
- Hive数据倾斜
- 某个reducer的数据输入量远远大于其他reducer数据的输入量
- key在reducer上分布不均匀
- Hive join 支持非等值连接
SELECT a.* FROM a LEFT OUTER JOIN b ON (a.id <> b.id)
- 需要注意的是,虽然Hive支持非等值连接,但使用非等值连接可能会导致查询的性能不如等值连接
- 非等值连接可能无法有效利用Hive中的map-side join和bucket map join等优化
- Hive 数据删除和修改
- 虽然Hive支持UPDATE和DELETE操作,但这些操作在Hive中通常效率不高,因为Hive是为批量处理和读密集型工作负载设计的,而不是为事务性工作负载设计的。
- Hive修改操作通常涉及以下步骤:
- 读取整个表或分区
- 应用更改
- 将结果写入新的表或分区
- 删除旧的表或分区
Hive专项练习 文章被收录于专栏
Hive专项练习错题