E-MapReduce极客挑战赛季军方案

前一段时间我参加了E-MapReduce极客挑战赛,很幸运的获得了季军。在这把我的比赛攻略给大家分享一下,希望可以抛砖引玉。

赛题分析与理解

赛题背景:

大数据时代,上云已成为越来越多终端客户大数据方案的落地选择,阿里云 EMR 以其易用性高,性能强,弹性大的特点,成为了广大用户的首选。英特尔® 傲腾™持久内存是兼具出色的内存与存储性能的解决方案,将高性价比的大容量内存与对数据持久性的支持巧妙地结合在一起。本题结合阿里云 EMR和英特尔® 傲腾™数据中心级持久内存(后文简称PMEM)以及Intel OAP(Optimized Analytic Package for Spark)软件包,优化软件系统和利用硬件的特征,追求TPC-DS测试集的最优性能。

赛题描述:

EMR 团队提供用于比赛的Spark 3.1.2代码分支,选手进行 Spark 代码优化和参数调优以提升SparkSQL执行效率,同时组委会提供性能测评工具供选手自行测试(单机环境或EMR集群环境)。在比赛阶段,选手将最终优化后的Spark代码和调优参数打包,通过天池平台提交,天池平台会使用相同的性能测评工具,进行评测和排名。

EMR软件版本:EMR-5.2.1
Master节点:ecs.g6e.4xlarge 1台
Worker节点:ecs.re6p.4xlarge 3台,单机系统盘100GB ESSD 1块,数据盘200GB ESSD 4块,持久内存252 GiB。

赛题要求:

1、比赛使用的测试数据集大小为1T,1 TB TPC-DS数据集已经提前生成,数据格式为 Parquet,生成数据集的随机因子组委会不公开。
2、比赛使用SQL query为TPC-DS工具生成的99个SQL,组委会从中选择30条SQL进行评测,具体选取的SQL组委会不公开。
3、选手可以进行Spark参数优化,SQL优化,执行Plan算子优化,引擎优化,调度优化,数据传输优化等,以便让SQL作业执行更快速。

关键技术:

用到的关键技术包括:E-MapReduce,Spark,Intel Optane (PMEM)及Intel OAP。如下图所示:

enter image description here

赛题分析

通过对赛题分析可以发现,主要可以通过参数优化、硬件优化及代码优化来实现对Spark效率的提升。如下图所示:

enter image description here

整体方案与优化

整体方案

考虑到初赛和复赛的Worker的配置差异主要是复赛的Worker有傲腾持久内存,所以初赛以参数优化为主,复赛以硬件优化及代码优化为主。

enter image description here

利用Optane

复赛开始使用Optane,通过Optane提升比赛成绩
 

enter image description here


通过参数优化及应用Optane,最后成绩760左右。

经验与感想

IT系统调优是一个复杂的工程,需要对软件系统、硬件平台、技术体系进行深入的了解。查找资料,借鉴前人经验,可以大大的加快调优的进度。根据软硬件情况,合理的规划,可以做到事半功倍。

通过这次比赛对Spark、硬件加速、湖仓一体架构等有了更深入的了解。

感谢主办方这么一个机会,让我可以参与这么有意思的比赛。感谢各位导师对我问题的耐心解答和帮助,辛苦大家了,谢谢。

查看更多内容,欢迎访问天池技术圈官方地址:E-MapReduce极客挑战赛季军方案_天池技术圈-阿里云天池

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

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

相关文章

Kimichat使用技巧:方便又实用的kimi+智能体

今天kimi智能助手推出了kimi的功能。简单的说,就是一系列kimi已经写好的提示词,用户可以直接调用、对话。 Kimi分为官方推荐、办公提效、辅助写作、社交娱乐、生活实用这几类。可以从左边侧边栏点击进入。 官方推荐的有: Kimi 001号小客服&…

第十五届蓝桥杯省赛第二场C/C++B组C题【传送阵】题解(AC)

解题思路 由于 a a a 数组是一个 1 1 1 到 n n n 的一个排列,那么形成的一定是如下形式: 一定会构成几个点的循环,或者是几个单独的点。 从任意点开始,如果能进入一个循环,一定可以将整个循环的宝藏都拿走&#x…

【C++】类和对象⑤(static成员 | 友元 | 内部类 | 匿名对象)

🔥个人主页:Forcible Bug Maker 🔥专栏:C 目录 前言 static静态成员 友元 友元函数 友元类 内部类 匿名对象 结语 前言 本篇主要内容:类和对象的一些知识点补充,包括static静态成员,友…

ITMS-90426: Invalid Swift Support

原文 Please correct the following issues and upload a new binary to App Store Connect. ITMS-90426: Invalid Swift Support - The SwiftSupport folder is missing. Rebuild your app using the current public (GM) version of Xcode and resubmit it. 解决方式 ITMS-…

Linux系统安全及应用(1)

目录 一.账号安全控制 系统账号清理 二.密码安全控制 密码安全控制 三.命令历史限制 命令历史限制 四.限制su切换用户 1)将信任的用户加入到wheel组中 2)修改su的PAM认证配置文件 ​编辑五.PAM认证的构成 六.使用sudo机制提升权限…

WebSocket的原理、作用、API、常见注解和生命周期的简单介绍,附带SpringBoot示例

文章目录 原理作用客户端 API服务端 API生命周期常见注解SpringBoot示例 WebSocket是一种 通信协议 ,它在 客户端和服务器之间建立了一个双向通信的网络连接 。WebSocket是一种基于TCP连接上进行 全双工通信 的 协议 。 WebSocket允许客户端和服务器在 单个TCP连接上…

开放式耳机哪个牌子好?五大爆款机型大盘点

开放式耳机采用挂耳设计,体积小巧,携带方便,并且更加通风透气,避免了耳朵过热和出汗导致的问题;更轻的重量能有效减少长期佩戴对耳朵带来的压力,佩戴时舒适度直接爆表,在跑步、爬山、打球等户外…

奇安信天擎 卸载

说明 之前按单位要求安装了奇安信软件,感觉和360一样流氓,最近由于一些原因,可以将之安装的安全软件卸载,今天抽时间研究了一下卸载奇安信的方法。 卸载步骤 1、使用everything搜索EntBase.dat配置文件,这个配置文件…

智慧能源数据监控平台

随着科技的飞速发展,能源管理已逐渐从传统的粗放型向精细化、智能化转变。在这个转型过程中,HiWoo Cloud平台的智慧能源数据监控平台以其独特的技术优势和创新理念,正引领着能源管理的新潮流。 一、智慧能源数据监控平台的概念 智慧能源数据…

【酱浦菌-模拟仿真】python模拟仿真PN结伏安特性

PN结的伏安特性 PN结的伏安特性描述了PN结在外部电压作用下的电流-电压行为。这种特性通常包括正向偏置和反向偏置两种情况。 正向偏置 当外部电压的正极接到PN结的P型材料,负极接到N型材料时,称为正向偏置。在这种情况下,外加的正向电压会…

在离线环境中将 CentOS 7.5 原地升级并迁移至 RHEL 7.9

《OpenShift / RHEL / DevSecOps 汇总目录》 说明 本文将说明如何在离线环境中将 CentOS 7.5 升级并迁移至 RHEL 7.9。为了简化准备过程,本文前面将在在线环境中安装用到的各种所需验证软件,而在后面升级迁移的时候再切换到由 ISO 构成的离线 Yum Repo…

Nacos 安全零信任实践

作者:柳遵飞 Nacos 作为配置中心经常存储一些敏感信息,但是由于误用导致安全风险,最常见的主要是以下两个问题: 1)Nacos 暴露公网可以吗?不可以,因为 Nacos 定位是注册配置中心,是…

JVM垃圾收集器--分区收集器

G1收集器 属性 G1(Garbage-First Garbage Collector)在 JDK 1.7 时引入,在 JDK 9 时取代 CMS 成为了默认的垃圾收集器。G1 有五个属性:分代、增量、并行、标记整理、STW。 分代 G1收集器 将内部分为多个大小相等的区域&#x…

【Redis 开发】Redis分片集群

分片集群 分片集群搭建分片集群 散列插槽集群伸缩故障转移RedisTemplate访问分片集群 分片集群 在我们使用哨兵进行高并发读的问题,但是还有海量数据存储,高并发写的问题,使用分片集群可以解决: 特征: 集群中有多个master,每个m…

国内各种免费AI聊天机器人(ChatGPT)推荐(上)

作者主页:点击! 国内免费AI推荐专栏:点击! 创作时间:2024年4月27日11点25分 欢迎来到AI聊天机器人推荐系列的第一篇文章! 在这个系列中,我将引领您探索国内各种AI聊天机器人的精彩世界。 从…

更易使用,OceanBase开发者工具 ODC 4.2.4 版本升级

亲爱的朋友们,大家好!我们的ODC(OceanBase Developer Center )再次迎来了重要的升级V 4.2.4,这次我们诚意满满,从五个方面为大家精心打造了一个更加易用、贴心,且功能更强的新版本,相…

mySQL商城项目实战 (终)(全部表)(1-88张)

本章无sql语句,直接放转出的sql文件。 88张表结果如图! 资源在已经与文章绑定, 在navicat工具中,执行以下步骤 在新建的数据库中右键,点击【运行sql文件】,运行绑定的资源,之后您就可以在您的navicat中看到我建好的8…

2024 java easyexcel poi word模板填充数据,多个word合成一个word

先看效果 一、准备工作 1.word模版 2.文件路径 二、pom依赖 <!-- easyexcel --><dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.1.7</version></dependency><depe…

mysql面试题九(SQL优化)

目录 1.一条 SQL 是如何执行的 2.索引失效的几种情况 3.EXPLAIN 4.Where 子句如何优化 5.超大分页或深度分页如何处理 6.大表查询如何优化 7.分库分表 基本概念 分库分表方法 水平拆分 垂直拆分 分库分表后的注意事项 1.一条 SQL 是如何执行的 在MySQL中&#xff0…

Flink checkpoint 源码分析- Flink Checkpoint 触发流程分析

序言 最近因为工作需要在阅读flink checkpoint处理机制&#xff0c;学习的过程中记录下来&#xff0c;并分享给大家。也算是学习并记录。 目前公司使用的flink版本为1.11。因此以下的分析都是基于1.11版本来的。 在分享前可以简单对flink checkpoint机制做一个大致的了解。 …