hivesql优化技巧之一 mapjoin
来源:互联网 发布:剑灵强制交易软件 编辑:程序博客网 时间:2024/06/07 05:13
hivesql 计算优化技巧
当要连接的两个表其中一个表非常小的时候,可以考虑使用mapjoin。mapjoin会将小表拷贝到每个运行map的节点上,并将其cache到内存中,然后在map阶段连接大表。由于省去了reduce过程,效率会提高不少。使用mapjoin之后,join会执行两个map-reduce Job,不用mapjoin则只有一个。hive.merge.mapfiles这个参数设置为true了,因为只有map而没有reduce,map的数量又不好控制,可能导致大量的map任务,这样会生成许多文件。hive.merge.mapfiles为true时,会启动另 外一个map-reduce Job来合并小文件。
mapjoin还有一个很大的好处是能够进行不等连接的join操作,如果将不等条件写在where中,那么mapreduce过程中会进行笛卡尔积,运行效率特别低,这是由于equality join (不等值join操作有 >、<、like等如:a.x < b.y 或者 a.x like b.y)需要在reduce端进行不等值判断,map端只能过滤掉where中等值连接时候的条件,如果使用mapjoin操作,在map的过程中就完成了不等值的join操作,效率会高很多。
select /*+ MAPJOIN(目标表) */
简单总结一下,mapjoin的使用场景:
1. 关联操作中有一张表非常小
2.不等值的链接操作
阅读全文
0 0
- hivesql优化技巧之一 mapjoin
- HiveSql(1)mapjoin、分区表
- Hive优化----MapJoin 优化
- HiveSQL查询优化
- hive MapJoin优化
- Hive MapJoin 优化
- Hive MapJoin 优化
- Hive MapJoin 优化
- JDBC优化技巧之一
- hive优化(1)之mapjoin
- hive sql优化-join Mapjoin Group by
- Hive mapjoin使用(数据倾斜优化)
- Hive join优化(mapjoin,streamtable)
- MapJoin和ReduceJoin区别及优化
- 程序的优化和简化技巧之一
- hive简介 安装 hivesql hive开发 性能优化
- Hive优化----通过实例分析mapjoin的优越性
- Hive优化---mapjoin和union all避免数据倾斜
- 基于Vue实现后台系统权限控制
- 166. Fraction to Recurring Decimal
- AbstractQueuedSynchronizer
- 文件上传
- HTTP/1.1协议的curl 返回 HTTP/1.1 100 Continue 加上header 加上body
- hivesql优化技巧之一 mapjoin
- JavaScript知识点
- 单链表逆序
- VisualStateManager
- node.js 的核心模块
- D31 Spark的checkpoint/sql/dataframe
- MySQL中tinytext、text、mediumtext和longtext详解
- 激光雷达行人检测翻译(1)
- ES6 函数的几个特性