Spark性能调优总结

spark集群配置(IP,Node,BorkerId,myId,角色,端口等重要字段信息) 目录 一:集群地址: 二:相应组件 1.CentOS 6.5 2.Hadoop 3.Hive 4.Zookeeper 5.Kafka 6.Spark 一:集群地址: hdfs集群: http://spark1:50070/explorer.html#/ yarn集群: http://spark1:8088/cluster/scheduler?... 阅读详情

  1、Spark调优背景

目前Zeppelin已经上线一段时间,Spark作为底层SQL执行引擎,需要进行整体性能调优,来提高SQL查询效率。本文主要给出调优的结论,因为涉及参数很多,故没有很细粒度调优,但整体调优方向是可以得出的。

环境:服务器600+,spark 2.0.2,Hadoop 2.6.0

2、调优结果

调优随机选取线上9条SQL,表横轴是调优测试项目,测试在集群空闲情况下进行,后一个的测试都是叠加前面测试参数。从数据可参数经过调优,理想环境下性能可提高50%到300%

3、 下面为调优分享PPT

1)一图概览

这里写图片描述

2) Spark集群优化——数据本地性

这里写图片描述

3)Spark集群优化——存储格式选择

这里写图片描述

4)Spark参数优化——计算资源

这里写图片描述

5) Spark参数优化——并行度

这里写图片描述

6)Spark参数优化——offheap内存

这里写图片描述

7)Spark参数优化——大小表join

这里写图片描述

8)Spark参数优化——其他

这里写图片描述

9) Spark参数优化——shuffle过程

这里写图片描述

10)Spark代码优化——RDD复用

这里写图片描述

11)Spark代码优化——选择合适算子

这里写图片描述

12) Spark代码优化——shuffle算子并行度调优

这里写图片描述

13)Spark代码优化——数据倾斜

这里写图片描述

14)Spark代码优化——优化数据结构

这里写图片描述

15)Spark代码优化——使用DateSet API

这里写图片描述

16)Spark代码优化——使用DateSet API

这里写图片描述

17) 目前Spark的瓶颈——内存

这里写图片描述

18) 目前Spark的瓶颈——内存

这里写图片描述

3、总结

调优参数虽名目多样,但最终目的是提高CPU利用率,降低带宽IO,提高缓存命中率,减少数据落盘。 
不同数据量的最优参数都不相同,调优目的是让参数适应数据的量级以最大程度利用资源,经调优发现并不是所有参数有效,有的参数的效果也不明显,最后折中推荐如下调优参数以适应绝大多数SQL情况,个别SQL需要用户单独调参优化。(以下参数主要用于Spark Thriftserver,仅供参考)

参数含义默认值调优值
spark.sql.shuffle.partitions并发度200800
spark.executor.overhead.memoryexecutor堆外内存512m1.5g
spark.executor.memoryexecutor堆内存1g9g
spark.executor.coresexecutor拥有的core数13
spark.locality.wait.process进程内等待时间33
spark.locality.wait.node节点内等待时间38
spark.locality.wait.rack机架内等待时间35
spark.rpc.askTimeoutrpc超时时间101000
spark.sql.autoBroadcastJoinThreshold小表需要broadcast的大小阈值1048576033554432
spark.sql.hive.convertCTAS创建表是否使用默认格式falsetrue
spark.sql.sources.default默认数据源格式parquetorc
spark.sql.files.openCostInBytes小文件合并阈值41943046291456
spark.sql.orc.filterPushdownorc格式表是否谓词下推falsetrue
spark.shuffle.sort.bypassMergeThresholdshuffle read task阈值,小于该值则shuffle write过程不进行排序200600
spark.shuffle.io.retryWait每次重试拉取数据的等待间隔530
spark.shuffle.io.maxRetries拉取数据重试次数310

如果觉得文章有什么值得讨论的欢迎来讨论,如果觉得文章不错,也希望点个赞作为对我的支持。

Spark性能调优——基础篇 本文要解决的问题: Spark在使用过程中不可避免的需要进行一系列的性能优化,本文就Spark性能调优的基础部分进行总结和归纳(开发调优和资源调优),参考了不少前辈的文章,在此非常感谢。目的在大数据的领域,Spark已经成为了不可或缺的一部分,被越来越多的人使用。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计算操作,应用范围与前景非常 阅读详情

相关推荐

spark性能调优

spark性能调优有很多措施,下面说说我用到的一些调优手段。 1.RDD分片数和executor个数的协调 要想充分的使数据并行执行,并且能充分的利用每一个executor,则在rdd的个数与executor的个数之间要有一个合适的值。若rdd的个数较多而executor的个数较少,则会导致部分rdd需要等待空闲的executor,这样不能使所有数据同时并行执行。若rdd较少,而executo

不忘初心 方得始终 6469

Spark性能调优-总结分享

1、Spark调优背景 目前Zeppelin已经上线一段时间,Spark作为底层SQL执行引擎,需要进行整体性能调优,来提高SQL查询效率。本文主要给出调优的结论,因为涉及参数很多,故没有很细粒度调优,但整体调优方向是可以得出的。 环境:服务器600+,spark 2.0.2,Hadoop 2.6.0 2、调优结果 调优随机选取线上9条SQL,表横轴是调优测试项目,测试在集

shieh的专栏 7312

Spark性能调优2-总结分享

1、Spark调优背景 目前Zeppelin已经上线一段时间,Spark作为底层SQL执行引擎,需要进行整体性能调优,来提高SQL查询效率。本文主要给出调优的结论,因为涉及参数很多,故没有很细粒度调优,但整体调优方向是可以得出的。 环境:服务器600+,spark 2.0.2,hadoop 2.6.0 2、调优结果 调优随机选取线上9条SQL,表横轴是调优测试项目,测试在集群空闲情况下...

简单就好 7568

Spark 性能调优实战:从开发到生产落地

Spark 是绝大多数大数据平台的主力计算引擎,但在真正的生产环境中,一条 SQL 或一段 DataFrame 代码从“能跑”到“跑得好”,中间隔着一整套理解模型、精细调优的工程实践。本文将从作业执行模型开始,一直深入内存管理、Shuffle 优化、并行度、Join 策略与监控诊断,所有内容均以“可动手、可排错”为目标,并在关键环节附上代码和 Spark UI 截图解读(以文字模拟)。

渣渣盟的博客 890

Spark调优:性能调优、JVM调优、shuffle调优、算子调优、troubleshooting调优、数据倾斜

目录 一、性能调优 1、分配资源 2、提高spark运行的并行度 3、重构RDD架构以及RDD持久化 4、使用广播变量 5、使用Kryo序列化 6、使用fastutil集合 7、调节数据本地化等待时长(s) 二、JVM调优 1、JVM调优:降低cache操作的内存占比 2、JVM调优:executor堆外内存与连接等待时长 三、shuffle性能调优 1、shuffle的原理 2、shuf...

Big_data_implicit_ 3074

编译opencv4.2时出现undefined reference to `jpeg_default_qtables‘错误的解决方案

操作系统:kylinV10 opencv版本:4.2.0 在编译opencv4.2.0的版本时,出现undefined reference to `jpeg_default_qtables’的错误提示,导致openc编译中断,不能继续编译,所以这个错误必须解决。 解决方案 查看错误的名字,根据名字分析,很有可能是当前系统中没有安装jpeg第三方库,到 http://www.ijg.org/上下载最新的源码包 jpegsrc.v9e.tar.gz,按如下顺序开始编译安装: tar -xzvf jpegsr.

jndingxin的专栏 5108

SparkSQL优化

主要介绍了sparksql执行计划查看,参数优化,SQL优化(HIVE适用)等内容

me_to_007的博客 1万+

从原理到实战:ARS548 4D毫米波雷达数据处理与多模态融合全解析

本文深入解析了4D毫米波雷达ARS548的工作原理与数据处理全流程。从FMCW测距测速、MIMO虚拟天线阵列到点云生成的三步FFT处理,提供了详尽的Python代码实现。文章进一步探讨了与激光雷达、相机的多模态时空对齐与融合策略,并指导如何构建用于自动驾驶感知训练的多模态标注数据集,为相关算法工程师提供了从理论到实践的完整指南。

weixin_29161719的博客 369

大数据开发平台:Spark环境搭建:看这一篇博客就够了!!

如果你看了这篇博客没有装好Spark,你来找我!!!! 首先Spark是一个基于内存的用于大规模数据处理的统一分析引擎。 其次它支持使用Scala、Python、R、SQL等语言快速编写应用程序,使用非常方便。 最后Spark可以运行在Hadoop、Apache Mesos,Kubernetes等环境、也可以进行独立或者在云上运行,它可以访问各种资源。

小蜜蜂博客 2407

SD - WAN:企业出海的网络加速器

例如,一家中国的跨境电商企业,在欧美市场的促销活动期间,借助 SD - WAN 技术,即使面对海量订单数据的交互,也能确保欧美客户在浏览商品、下单支付时感受到近乎本地网络的流畅体验,大大提升了客户满意度,稳住了销售增速。企业无需在海外本地部署大量冗余服务器,只需依托云台,借助 SD - WAN 快速稳定的网络连接,即可轻松实现业务拓展,进一步精简运营架构,提升整体效能。在未来,随着技术的不断演进和企业出海需求的持续增长,SD - WAN 将持续赋能,助力更多企业在全球市场扬帆远航,书写辉煌篇章。

idcicp_com的博客 447

汽车标定技术(七)--英飞凌TC3xx_Overlay实现页切换

今天说要开个专栏讲讲XCP标定,但在将标定之前,先把英飞凌专门为标定功能设计overlay功能讲解清楚。

认真搞搞汽车MCU 4019

Spark性能调优--资源参数调优、算子调优、Shuffle参数调优、Spark 数据倾斜调优

一、资源参数调优 了解完了Spark作业运行的基本原理之后,对资源相关的参数就容易理解了。所谓的Spark资源参数调优,其实主要就是对Spark运行过程中各个使用资源的地方,通过调节各种参数,来优化资源使用的效率,从而提升Spark作业的执行性能。以下参数就是Spark中主要的资源参数,每个参数都对应着作业运行原理中的某个部分,我们同时也给出了一个调优的参考值。 num-executors   参数说明:该参数用于设置Spark作业总共要用多少个Executor进程来执行。Driver在向...

. 9596

【STK】手把手教你利用STK进行光电红外仿真04-STK/EOIR模块的实战操作1航天器星载相机对LEO卫星成像

今天引入一个实际的场景,帮助大家完成对于这个模块的理解与运用。

weixin_44184852的博客 2417

Spark性能调优

Spark性能调优

qq_40822132的博客 5782

论文翻译:Automatic Lesson Plan Generation via Large Language Models with Self-critique Prompting

在本文中,我们利用大型语言模型(LLMs)的理解和生成能力来自动生成定制化的课程计划。这解决了传统计划可能无法充分满足不同教学环境和学生群体的特定需求的常见挑战。我们提出了一个新颖的三阶段过程,包括使用检索增强生成(RAG)逐步生成课程计划的每个关键组成部分,通过LLMs进行自我批评,以及随后的细化。我们使用这种方法为小学2至5年级生成了涵盖80多个主题的数学课程计划。邀请了三位经验丰富的教育工作者制定全面的课程计划评估标准,然后使用这些标准将我们的LLM生成的课程计划与同一主题的实际课程计划进行基准比较。

CSPhD-winston的博客 1103

【QT开发教程】Qt中的数据加密与解密

在现代应用程序中,数据加密与解密是保护敏感信息的重要手段。Qt本身并不直接提供数据加密与解密的支持,但可以使用第三方库,如OpenSSL或Crypto++,来实现这一功能。本文将介绍如何在Qt中使用OpenSSL进行数据加密与解密,包括基本概念、使用方法以及一些实际的示例。

科技改变人类,技术成就未来 1157

Spark优化----Spark 性能调优

本文介绍了Spark的常规性能调优;算子调优;Shuffle调优;JVM调优

天冬忘忧的博客 3323

“华为杯”研究生数学建模竞赛2020年-【华为杯】D题:无人机集群协同对抗(附获奖论文和MATLAB代码实现)

1.问题重述摘 要:本文针对非线性约束条件下红蓝双方无人机集群协同对抗的最优规划问题,结合贪婪队形、非线性规划、内点法、蒙特卡洛方法和全联立正交配置有限元法,构建了无人机集群协同对抗推演模型。,构建了。我们综合考虑了,和。首先分析红方在集群约束下的贪婪队形和拦截策略,然后我们基于内点法联合MATLAB和AMPL编程求解蓝方突防的非线性规划解,最后基于蒙特卡洛法对整个蓝方突防过程进行推演,得到突防概率图。通过推演,我们提出了两块的区域作为所求区域,并对蓝方的最优突防策略进行分析。

getusushu的博客 1552

【Spark】Spark性能调优

本文介绍了十种调优策略,如调整Spark的配置参数、优化数据存储格式(如Parquet和ORC)、避免不必要的shuffle操作、合理设置并行度、充分利用内存和缓存、使用广播变量减少数据传输等方式,来提升作业的执行速度和资源利用率。

DataCrafter的博客 1609

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Spark 性能调优

Spark 性能调优

qq_41982570的博客 738

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

spark性能调优总结

0.性能调优大纲 调优简介 开发调优 资源调优 数据倾斜调优 shuffle调优 jvm调优 1. 调优简介 ​ ​ 为啥要做调优,上图已经告诉我们答案了~ 2. 开发调优 ​ 开发出高质量的代码,从如下几个角度去说明,当然避免使用一些性能比较低的算子,使用一些占用空间比较小的数据结构,使用一些占用体积比较小的序列化的方式等等。 2.1. 避免创建重复的RDD ...

wuyangcc的博客 543

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Spark 性能调优之Shuffle调优

Shuffle调优一:调节map端缓冲区大小 在Spark任务运行过程中,如果shuffle的map端处理的数据量比较大,但是map端缓冲的大小是固定的,可能会出现map端缓冲数据频繁spill溢写到磁盘文件中的情况,使得性能非常低下,通过调节map端缓冲的大小,可以避免频繁的磁盘IO操作,进而提升Spark任务的整体性能。 map端缓冲的默认配置是32KB,如果每个task处理640KB的数据,...

@小刘同学nice 5331

Spark性能调优——扩展篇

本文要解决的问题:从更深层次考虑,对Spark进行性能调优。目的继基础篇分析了开发调优与资源调优之后,本文作为拓展篇,将深入分析数据倾斜调优与shuffle调优,以解决更加棘手的性能问题。数据倾斜调优简述有时候,大家可能会遇到大数据开发过程中一个比较棘手的问题,那就是数据倾斜,此时Spark作业的性能会比预期差很多,数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的

Miracle_shen的博客 1万+
上一篇: HBase简介与基本原理
下一篇: mysql源码安装shell脚本
AA赵师傅
博客等级 码龄9年 89粉丝 124原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值