Hive旺旺讨论(关于mapjoin)
2019独角兽企业重金招聘Python工程师标准>>>
shaomn (2013-08-01 13:39:06):
select/*+ mapjoin(a)*/ a.* from sma a left outer join smb b on a.k=b.k;
FAILED: Error in semantic analysis: MAPJOIN cannot be performed with OUTER JOIN
select/*+ mapjoin(b)*/ a.* from sma a left outer join smb b on a.k=b.k;
Total MapReduce jobs = 1
Execution log at: /tmp/dwapp/dwapp_20130801133737_5696fa81-3104-450d-a4f5-fb5358bdda46.log
从表就可以
主表mapjoin不行
求教原理
卓荦 (2013-08-01 13:40:41):
右表可以左表不行
因为left outer join 至少会包含左表所有结果
shaomn (2013-08-01 13:42:04):
包含左表所有结果, 是不是说主表如果做了mapjoin,数据就会翻翻
卓荦 (2013-08-01 13:42:33):
所以只能是分发左表,遍历左表在右查,不能反过来
切分左表,分发右表
所以只能是切分左表,分发右表,遍历左表在右查,不能反过来
所以一般情况下,left outer join 用于 事实 join 维度,左表全是大表,事实表
shaomn (2013-08-01 13:44:12):
学些了
学习了
劢熙 (2013-08-01 14:04:53):
jion左表是 小表吧,
李元 (2013-08-01 14:05:25):
荦爷威武
卓荦 (2013-08-01 14:07:38):
@劢熙 left join,右表小
劢熙 (2013-08-01 14:12:28):
荦爷 outer join 右表小, inner join 左表小?
卓荦 (2013-08-01 14:18:01):
reduce join的情况下,reduce端,按key分发后,左边n-1个表会在内存里,遍历第n个表,在内存 中匹配,这时,左表越均匀(越小)越好
map join不一样,小表直接全进内存,所以是右表小好些
刚才我们讨论的是left join在map join的情况,也就是第二种
玄木 (2013-08-01 16:37:12):
荦爷, 也就是说 map join 对于 left outer join 需要 右表小, 而对于reduce join 则是 最右边的表最大. 对不 ?
卓荦 (2013-08-01 16:39:29):
对的
转载于:https://my.oschina.net/Chanthon/blog/149357
Hive旺旺讨论(关于mapjoin)相关推荐
- Hive中JOIN的使用入门
Hive中join的用法 Hive中Join的通常使用有以下几种: inner join 等值连接 left join right join full join left semi join cr ...
- 窗口函数和hive优化简记
窗口函数: (1) OVER():指定分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变而变化.常用partition by 分区order by排序. (2)CURRENT ROW:当前行 ...
- hive中groupby优化_Hive 查询优化总结
一.join优化 Join查找操作的基本原则:应该将条目少的表/子查询放在Join操作符的左边.原因是在Join操作的Reduce阶段,位于Join操作符左边的表的内容会被加载进内存,将条目少的表放在 ...
- [Hive] - Hive参数含义详解
hive中参数分为三类,第一种system环境变量信息,是系统环境变量信息:第二种是env环境变量信息,是当前用户环境变量信息:第三种是hive参数变量信息,是由hive-site.xml文件定义的以 ...
- Hive map side join入门及测试
什么是MapJoin? MapJoin顾名思义,就是在Map阶段进行表之间的连接.而不需要进入到Reduce阶段才进行连接.这样就节省了在Shuffle阶段时要进行的大量数据传输.从而起到了优化作业的 ...
- Hive基础学习文档和入门教程
问题导读 1.hive除了包含用户接口.元数据,还包含哪些内容? 2.hive包含哪些操作? 3.hive数据能否被修改? 4.hive优化有哪些常用方法? 摘要: Hive 是建立在 Hadoop ...
- hive常用的函数以及知识
1.Hive:insert into table 与 insert overwrite table 区别 不清理以上已经插入的记录,直接执行insert overwirte,并查询分析结果 两者的异同 ...
- [一起学Hive]之十二-Hive SQL的优化
十一.Hive SQL的优化 本章只是从HQL层面介绍一下,日常开发HQL中需要注意的一些优化点,不涉及Hadoop层面的参数.配置等优化. 其中大部分是我之前发过的博客文章,这里整理了下. 11.1 ...
- Hive的HQL语句及数据倾斜解决方案
[版权申明:本文系作者原创,转载请注明出处] 文章出处:http://blog.csdn.net/sdksdk0/article/details/51675005 作者: 朱培 ID ...
最新文章
- 收藏!PyTorch常用代码段合集
- RStudio启动后修改文件(数据)读取默认目录
- 库克:苹果收取 30% 佣金很合理!
- ANDROID STUDIO 2.2 来啦
- tableau可视化数据分析60讲(二)-tableau入门篇之各模块功能介绍
- 清除掉AD的相关属性!
- 使用bcftools提取指定样本的vcf文件(extract specified samples in vcf format)
- WMI介绍和应用查询硬件信息(硬盘信息、主板信息、BIOS信息、显示器信息、网络适配器、CPU信息)
- Keras-9 实现Seq2Seq
- 坚持练字一年是什么样的体验?
- java开源社区 推荐_13 个最火的 Java 开源项目推荐!总有一个适合你!
- 优化算法——差分进化算法(DE)
- python 视频 特效,Python实现高级电影特效
- JavaScript中怪异现象true和false
- Mac电脑程序无响应怎么办?
- 开发游戏十年,遭遇游戏开发史上最诡异事件,然而被我成功解决了!
- 电商宝打单发货-菜鸟面单回收
- 百万前端之js通过链接生成二维码可以保存下载复制
- 想要搭建自己的云主机可以怎么做
- ipip.net IP位置信誉信息爬取
热门文章
- java和android 语法区别_病症解析:语言发育迟缓和自闭症的联系与区别
- 一样入职的应届生工资不一样_刘涛入职阿里:为什么阿里要招聘明星?明星入职和普通人一样吗...
- 伯克利计算机科学研究生,加州大学伯克利分校
- mysql删除n行_订购记录并在MySQL中删除n行
- 网站负责人委托书_关于网站负责人授权委托书的阿里云网站内容
- php分页循环生成htnl,PHP分页类,生成分页html字符串
- Html图片懒加载动画,Intersection Observer实现滚动到相应区域执行动画及图片懒加载...
- java中 d_Java 中的 syncronized 你真的用对了吗
- 文件服务器+好处,文件服务器 好处
- Java语言之数组_java语言之数组-----选择排序