Hive 数据倾斜&hive.optimize.skewjoin

数据倾斜原因

通常发生在join过程中,两个表都较大,不能支持map join,其中一个表中数据量某一类值特别多,分配到该值的reducer,耗时较长

模拟数据

Fact 表,列code_id,code_od=100的值,占98W行,其它占2W行
Dimension 维度表, 列code_id,10W行

Join查询

select
 *
from
 FACT f
 left join DIMENSION d
   on f.CODE_ID = d.CODE_ID

优化方案1

sql1

select
  *
from
  FACT f
  left join DIMENSION d
    on f.CODE_ID = d.CODE_ID
where
  f.CODE_ID <> 100

sql2

你可能感兴趣的:(hive,进阶,hive)