12-order by和group by 原理和优化 sort by 倒叙

 

========================原理和优化==================================
groupBy分组?会造成一个数据倾斜
1.解决方案:将输入在map端进行部分的打乱重分
set hive.groupby.skewindata=true;
2.在map到reduce端的时候设置combiner进行合并
set hive.map.aggr=true;
3.在combiner进行合并的时候要知道数据量的大小,如果不是特别大就不需要进行合并
set hive.groupby.mapaggr.checkinterval=100000;如果数据小于10w条那么没必要合并
4.看在combiner合并期间做的合并率
set hive.map.aggr.hash.min.reduction=0.5order by是排序?全局排序,reduce就应该是一个
其实orderby就是一个reduce在进行排序处理,那么压力特别大,并且容易产生宕机
那么我们在使用这个order by的时候就不能进行全局排序,加上limit
set hive.mapred.mode = strict; 
在严格模式下如果向使用order by进行排序,那么必须使用limit进行指定条数sort by排序,不是全局排序,单个reduce的排序
问题:将每个部门的数据都按照工资进行倒序?set mapreduce.job.reduces=3;
select * from t_emp distribute by deptno sort by salary desc;




sort by 每个mr自己得文件单独排序
distribute by 分发将map端得数据按照一定得规则分发给不同得reduce端
set mapreduce.job.reduces=3;
与order by不同,order by是全局排序 其实sortby也可以全局排序 reduce是一个得时候就可以全局排序
cluster by:分发+排序 == sort by+distribute by,但是cluster by 这个分发加上排序是只能指定一个字段

 

 

转载于:https://www.cnblogs.com/JBLi/p/10834570.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/569457.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

内联元素(display:inline-block)注意事项

1.内联元素margin的上下没有用,加入 display:inline-block 后,才有用; 不是block块级元素了,那么想居中,用 margin:0 auto; 没用了, 那想居中,在他“父亲”加上 text-align&#x…

多个excel文件内容合并到一个excel文件的多个sheet的小程序

# -*- coding:utf-8 -*-import xlrd, xlsxwriter# 待合并excelallxls ["D:\\excelcs\\***.xlsx"]allxls1 ["D:\\excelcs\\***.xlsx"]allxls2 ["D:\\excelcs\\***.xlsx"]#print(allxls[0:2])# 目标excelend_xls "D:\\excelcs\\***.xlsx&…

【编程训练-考研上机模拟】综合模拟2-2019浙大上机模拟(晴神)

A - next[i] Problem Description 在字符串匹配的KMP算法中有一个重要的概念是next数组,求解它的过程让不少同学伤透了心。next数组的直接语义其实是:使“长度为L的前缀”与“长度为L的后缀”相同的最大L,且满足条件的前后缀不能是原字符串本…

CSS常用工具

wall haven 墙纸 CSS tricks shape 用CSS作图 iconfont.cn 小图标工具网站&#xff0c;&#xff08;添加至项目→symbol→查链接→生成代码→<script>→使用帮助&#xff09; CSS3 linear gradient &#xff08;generator&#xff09; 线性渐变工具 CSS animation…

CSS li 一半左浮一半右浮

.skills >ol li{float: left; 左浮width: 48%;margin-bottom: 40px; } .skills >ol li:nth-child(even){ //even 偶数 odd 奇数float: right; 右浮 }另一种 .skills >ol li:nth-child(1){ //第一个margin-left: 0; }.skills >ol li:first-child{ //…

addEventListener事件委托

什么是事件委托&#xff1a;通俗的讲&#xff0c;事件就是onclick&#xff0c;onmouseover&#xff0c;onmouseout&#xff0c;等就是事件&#xff0c;委托呢&#xff0c;就是让别人来做&#xff0c;这个事件本来是加在某些元素上的&#xff0c;然而你却加到别人身上来做&#…

HTML常遇问题

1、span 里面套 div 会有问题&#xff0c;可以套 span&#xff0c;再加语句 display:block; 相当于套了div 2. 外部不能加padding&#xff0c;所以可以再里层加 div&#xff0c;在加padding可以了 3、display:block; display:inline-block; 让border将它们包住 4、*{ …

bzoj3771:Triple

传送门 生成函数 设生成函数\(f(x)\)&#xff0c;可以将系数定为选的方案数&#xff0c;指数定为代价 那么\[ f(x)\sum_{i1}^{n}x^{w_i} \] 然后答案就是\(f^3(x)f^2(x)f(x)\)然后去掉重复的情况 然后我们设\[ A(x)\sum_{i1}^{n}x^{2w_i}\\ B(x)\sum_{i1}^{n}x^{3w_i} \] 重复的…

CSS图片设置

1、background-position: center center; 图片居中 background-size: cover; 让图片自适应&#xff0c;按比例缩放 2、加背景色mask&#xff0c;面罩&#xff1a; background: rgba(0, 0, 0, 0.7); 宽度不要写&#xff0c;自适应的 3. 图片的宽度&#xff0c;最好先规定好&…

sqlserver——视图

数据库中的视图是一个虚拟表。同真实的表一样&#xff0c;视图包含一系列带有名称的列和行数据&#xff0c;行和列数据用来自由定义视图和查询所引用的表&#xff0c;并且在引用视图时动态产生。本篇将通过一些实例来介绍视图的概念&#xff0c;视图的作用&#xff0c;创建视图…

js常用API

(1) getAttribute 用户写啥是啥&#xff0c;#后面的值&#xff0c;获取用户在上面写的原文&#xff0c;不是浏览器加http协议的东西&#xff1b; <a href"#siteAbout">关于</a> var href a.getAttribute(href) // hrefsiteAbou…

DOM相关(主要是var和let的区别用法)

一、1.节点的类型有七种&#xff0c;分别是&#xff1a;Document&#xff0c;DocumentType&#xff0c;Element&#xff0c;Attribute&#xff0c;Text&#xff0c;Comment&#xff0c;DocumentFragment 2.DOM树的根节点是&#xff1a;html 3.元素Element的NodeType值为&…

JOIN三个表格

表格一 表格二 表格三 SQL语句为 SELECT * FROM movie JOIN casting ON movie.idcasting.movieid     JOIN actor ON casting.actoridactor.id(要注意join 的格式) 最终结果展示在最下面 idtitleyrdirectorbudgetgrossmovieidactoridordidname1001710 Rillington Place19…

深度学习入门|第5章 误差反向传播法(二)

误差反向传播法 前言 此为本人学习《深度学习入门》的学习笔记 四、简单层的实现 本节将用 Python 实现前面的购买苹果的例子。这里&#xff0c;我们把要实现的计算图的乘法节点称为“乘法层”&#xff08;MulLayer&#xff09;&#xff0c;加法节点称为“加法层”&#xff08;…

内容样式行为分离

CSS负责HTML&#xff1a;人类选不中&#xff1b;js取不到 CSS负责JS: 如果逻辑复杂&#xff0c;CSS会变慢&#xff0c;页面会变慢

CSS图片布局 flex(竖着的几张图片改为一排)

<style>.images{display: flex;align-items: flex-start;//border: 1px solid red; 有可能边框包不住这几张图片&#xff0c;但如果窗口够大&#xff0c;也可以包住//overflow: hidden; 如果写了&#xff0c;超出边框的部分会被隐藏 } </style> 布局有两种方式&a…

牡丹-曹州牡丹:曹州牡丹

ylbtech-牡丹-曹州牡丹&#xff1a;曹州牡丹菏泽牡丹&#xff0c;山东省菏泽市特产&#xff0c;中国国家地理标志产品。牡丹&#xff0c;原产中国西北部&#xff0c;秦岭和陕北山地多野生&#xff0c;栽培历史悠久&#xff0c;南北朝时已声成为观赏植物。菏泽&#xff0c;古称曹…

idea报错:Error: java: 错误: 不支持发行版本 5

我在测试类运行时&#xff0c;出现下述错误&#xff1a; 可能原因&#xff1a;java版本不一致项目编译配置使用的java版本不对 解决方案&#xff1a; 第一步&#xff1a;file---Project Structure-- Project&#xff08;两版本改为一致&#xff1a;第二、三个横框中数字都为11…

python网络爬虫基础day01

2019.5.13&#xff0c;今天在“小猿圈”跟着波波老师学习了爬虫开发的第一章和第二章&#xff0c;总结下今天学的知识&#xff1a; 爬虫基础介绍&#xff1a;   什么是爬虫&#xff1f;    - 通过编写程序&#xff0c;模拟浏览器上网&#xff0c;然后让其去互联网上抓取数…

忘记mysql数据库连接密码

本次操作所有需要用到的密令行&#xff1a; bin>net stop mysql bin>mysqld --skip-grant-tables bin>mysql mysql>use mysql mysql>update user set passwordpassword("123456") where user"root"; mysql>flush privileges; mys…