Spark源码性能优化案例分析
本篇文章枚举了几例常见的问题并给出了优化方案,推荐了两套测试性能优化工具
问题:
- Spark 任务文件初始化调优 资源分析,发现第一个 stage 时间特别长,耗时长达 14s , CPU 和网络通信都有一定开销,不符合应用代码逻辑。
- Spark 任务调度优化 资源分析,发现 stage2 只有一台服务器上的 CPU 被使用,其他服务器 CPU 完全空闲
- 任务分配算法调优 在做 log 分析的时候,发现在 Executor 领取任务的时候,在最后总会有一两个 Executor 领取的任务是非 local 的。比如,最后两个任务 A [ 2,3,1] 和 B[1,3,4] , Executor [ 1][2] ,当 Executor[1] 领取了任务 A ,则 Executor [ 2] 领到的任务 B 就是非 local 的。 解决方案:对任务进行偏序排序后再分配 [SPARK-2193]
- OS 配置调优 资源分析,发现服务器大量 CPU 资源消耗为 sys 类型 调查发现,是因为某些 Linux 版本的 t ransparent huge page 默认为 enable 状态导致 优化方案:关闭 OS 的 transparent huge pages Echo never > /sys/kernel/mm/ transparent_hugepage /enabled Echo never > /sys/kernel/mm/ transparent_hugepage / defrag Transparent huge page 开启 Transparent huge page 关闭 。
- 网卡调优 资源分析,发现大量作业时间消耗在网络传输上。
原文地址,可下载https://www.slidestalk.com/s/Spark36744
Spark源码性能优化案例分析相关推荐
- Spark的性能优化案例分析(下)
前言 Spark的性能优化案例分析(上),介绍了软件性能优化必须经过进行性能测试,并在了解软件架构和技术的基础上进行.今天,我们通过几个 Spark 性能优化的案例,看一看所讲的性能优化原则如何落地. ...
- SQL性能优化案例分析
这段时间做一个SQL性能优化的案例分析, 整理了一下过往的案例,发现一个比较有意思的,拿出来给大家分享. 这个项目是我在项目开展2期的时候才加入的, 之前一期是个金融内部信息门户, 里面有个功能是收集 ...
- Spark源码解读之Shuffle原理剖析与源码分析
在前面几篇文章中,介绍了Spark的启动流程Spark内核架构流程深度剖析,Spark源码分析之DAGScheduler详解,Spark源码解读之Executor以及Task工作原理剖析,Spark源 ...
- spark 源码分析之十九 -- DAG的生成和Stage的划分
上篇文章 spark 源码分析之十八 -- Spark存储体系剖析 重点剖析了 Spark的存储体系.从本篇文章开始,剖析Spark作业的调度和计算体系. 在说DAG之前,先简单说一下RDD. 对RD ...
- Spark源码分析之Sort-Based Shuffle读写流程
一 概述 我们知道Spark Shuffle机制总共有三种: # 未优化的Hash Shuffle:每一个ShuffleMapTask都会为每一个ReducerTask创建一个单独的文件,总的文件数是 ...
- Spark源码分析之七:Task运行(一)
在Task调度相关的两篇文章<Spark源码分析之五:Task调度(一)>与<Spark源码分析之六:Task调度(二)>中,我们大致了解了Task调度相关的主要逻辑,并且在T ...
- Spark 源码分析
2019独角兽企业重金招聘Python工程师标准>>> 一. 启动篇 (一) 引子 在spark-shell终端执行 val arr = Array(1,2,3,4) val rdd ...
- Spark源码分析之九:内存管理模型
Spark是现在很流行的一个基于内存的分布式计算框架,既然是基于内存,那么自然而然的,内存的管理就是Spark存储管理的重中之重了.那么,Spark究竟采用什么样的内存管理模型呢?本文就为大家揭开Sp ...
- spark 源码分析 Blockmanager
原文链接 参考, Spark源码分析之-Storage模块 对于storage, 为何Spark需要storage模块?为了cache RDD Spark的特点就是可以将RDD cache在memo ...
最新文章
- 【java 性能优化实战】1 理论分析:性能优化,有哪些衡量指标、性能优化的技术手段
- 如何在CentOS 7 / RHEL 7 运行单用户模式进行root的密码重置
- python整体缩进笔记_python笔记1
- linux报网络设备繁忙,【分享】linux常用命令
- leetcode--数组(Easy)
- 1200多套微信小程序源码-史上最全的不同行业的源码集合
- openstack 性能测试
- Win10蓝牙耳机连接成功但耳机没声音解决方案
- 世界ol的服务器在哪个文件夹,世界OL7月新区永恒之约官方服务器开启
- uefi下的开机顺序_科普贴:BIOS和UEFI的启动项
- 移动应用测试与PC端测试区别
- java 窗口点击事件
- 十大老牌黑客之:米特尼克
- linux下运行win10效果好不好,Win10不好用?继续坚守Win7的人依然巨多
- 定义监听器的三种方法
- ultra96开发板安装升级PYNQ2.5.1设置
- ios基础篇(十四)—— 操作依赖、操作缓存池
- nodejs 使用npm install express报错解决方案
- 2005年最强简历模板、简历封面资源下载贴
- T5L串口屏界面开机动画、动态屏保的设置原来如此简单