hive mapjoin 方案

hive mapjoin 方案

hive 显示使用mapjoin

hive> set  hive.auto.convert.join=true;

hive> set  hive.auto.convert.join;
hive.auto.convert.join=true

hive> SELECT 
    -- 可以显示的指定如下这一行mapjoin 关键词。
    /*+mapjoin(b)*/
    a.date,a.page_id,b.page_name,
    count(1) as pv,
    count(distinct gu_id) as uv
    from dw.fct_page_ref a
    left join dw.dim_page b on a.page_id = b.page_id 
    where date = "2017-09-20"
    group by a.date,a.page_id,b.page_name;
执行日志:
Query ID = gongzi_20170922102424_c2e3e956-1c3f-41de-86b6-8531b57a23ab
Total jobs = 1
Execution log at: /tmp/gongzi/gongzi_20170922102424_c2e3e956-1c3f-41de-86b6-8531b57a23ab.log
2017-09-22 10:25:01     Starting to launch local task to process map join;      maximum memory = 1908932608
....
...

MapJoin 使用限制

MapJoin 使用限制,必须是join中从表(子查询)数据比较小。所谓从表,及左外连接的右表,或者右外连接的左表。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值