HIVE TopN shuffle 原理
HIVE TopN Shuffle
TopN 问题是排序中的一个经典问题。对于一个长度为 m 的数组,取其最大的 n (n <= m) 条数据,可以不必对整个数组进行全排。一般的算法对 m 进行全排的复杂度大约为 mlog2(m)。假设我们只取其中最大的 n 条,那么可以把这个复杂度降低到 m * log2(n)。如果 n << m,那么收益还是很大的。
HIVE-3562 引入了一个针对 TopN 的优化,即将带有 limit 算子的 order by 推至 map 端,这样 map 不必将所有数据 shuffle 到 reduce。order by 和 limit 算子在日常使用场景中经常一起出现,因此这个优化就显得很有必要。
抛开 limit 是如何下推的不管,我们这里只关注 ReduceSinkOperator

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
企业级性能、安全可靠 阿里云发布企业级大数据平台开发者版
3月20日,阿里云宣布推出企业级大数据计算平台MaxCompute开发者版。该版本基于MaxCompute原有的分布式架构,具备高可靠、企业级安全能力、全面融合开源等特点,可轻松做到开箱即用,分钟级拥有大数据开发项目,帮助开发者突破技术壁垒,降低门槛和成本,提高大数据开发效率,实现个人技术能力和业务的快速增长。 MaxCompute作为阿里巴巴的通用计算平台,承担了阿里巴巴集团99%的数据存储和95%的统一计算,每天有超过18000名阿里巴巴内部的开发者在这个平台上进行开发,几乎涵盖阿里内部所有的数据体系。同时,MaxCompute在云上服务着上万家客户,客户遍及全球各主要市场的金融、互联网、生物医疗、能源、交通,传媒等行业。 开箱即用的在线服务Severless在线服务,无需关心基础设施与软件运维,开通即可使用完整的平台服务。计算与
- 下一篇
你与一份好简历之间的距离
阅读本文大概需要 2.7 分钟。 每年年初都是企业的招聘旺季,对应的三四月份绝对跳槽、找工作的好时机,业内经常称呼这两个月为金三银四。实力雄厚的人,那个月找工作问题都不大,但是也会尽量挑选个好时机,能有更多的选择。 上次就有大兄弟在后台给我留言,应该是位大学生,让我写篇关于编写简历的注意事项,乘着这个跳槽季,来盘盘简历有哪些注意事项。 首先一些细节需要注意下: 1. 简历一般使用A4纸打印,内容控制在两页,太长给面试官的印象抓不住重点,太短经验比较缺乏。 2. 简历模板不要太花哨,简单点就行。一般来说企业不会特别在意你的简历模板,只要排版简洁、清晰、不花哨、不夸张就行了,除非你是去应聘设计之类的岗位。所以我不建议把花费太多精力在模板上,选择一份自己看着舒服的就行。 3. 简历上的排版也要稍微注意下,比如必要的间距可以让阅读者更加清晰的阅读,英文、数字与中文之间加一个空格,不要有错别字。还有个人觉得很重要的一点,技术栈千万不要把大小写搞错了,比如「SpringMVC」写成「Springmvc」,不知道大小写的去百度百科查查。这些小细节虽然不影响大体,但是尽量也都注意下。 其次,一般来说,...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Red5直播服务器,属于Java语言的直播服务器
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题