SparkStreaming本地化策略性能调优与使用场景分析
1.背景介绍:平台使用的华为FI C203的版本,通过SparkStreaming消费kafka数据后,进行算法处理入库。其中在算法部分耗时为4秒,每个批的数据量在30MB左右。执行算法部分的算子分区数据从50调大至150,发现算法部分时间开销仍然在4秒左右,并未提高。
2.调优手段:
spark.locality.wait
spark.locality.wart.process
spark.locality.wait.node
spark.locality.wait.rack
的默认3秒时间改为0秒。
3.原因解释
以上参数是调整会影响到数据本地化策略的。本地化策略有5种。
1.PROCESS_LOCAL:进程本地化,性能最好(相对数据量较大时)。
2.ODE_LOCAL:节点本地化。代码和数据在同一个节点中。
3.NO_PREF:数据从哪里获取都一样,比如从数据库中获取数据。
4.RACK_LOCAL:数据和task在一个机架的两个节点上,数据需要通过网络在节点之间进行传输。
5.ANY:数据和task可能在集群中的任何地方,而且不在一个机架中,性能最差(相对数据量较大时)。
将时间由3秒改为0秒时,spark来不及分析用哪种本地化策略,就已经被降级了(1->5,数字越大,级别越低),降级后的现象是数据shuffle到别的节点上进行算法处理,未降级的特点是算法随着数据走,数据并大部分集中在某一个或两个物理节点,由于cpu不够,反而降低算法处理的整体时间开销。然而sparkStreaming抓取的数据并不大,降级后数据跟随算法走,通过shuffle后,算法与数据分散到不同物理节点上,由于数据量少,网络传输快,cpu资源充足,反而效率更高。调整后算法的算子时间开销不到1秒。
4.总结
以上调优手段看使用场景使用,数据量小时时间调小;数据量大的,尽量让算法跟随数据走。
SparkStreaming本地化策略性能调优与使用场景分析的更多相关文章
- Java性能调优:利用JMC分析性能
Java性能调优作为大型分布式系统提供高性能服务的必修课,其重要性不言而喻. 好的分析工具能起到事半功倍的效果,利用分析利器JMC.JFR,可以实现性能问题的准确定位. 本文主要阐述如何利用JMC分析 ...
- [原创-性能调优]借助AWR报告分析解决oracleCPU过高的问题
简介:在oracle数据库中,有两个非常实用的自带监控工具EM(Enterprise Manager)和AWR(Automatic Workload Repository).其中,通过AWR报告可以生 ...
- JVM之调优及常见场景分析
JVM调优 GC调优是最后要做的工作,GC调优的目的可以总结为下面两点: 减少对象晋升到老年代的数量 减少FullGC的执行时间 通过监控排查问题及验证优化结果,可以分为: 命令监控:jps.jinf ...
- MYSQL数据库性能调优之三:explain分析慢查询
explain显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句.使用方法,在select语句前加上explain就可以了. 一.explain ...
- 业务系统请求zabbix图表性能调优
性能调优实践 性能调优实践 背景 问题分析 后端优化排查 前端优化排查 后端长响应排查 zabbix server 优化 总结 背景 用 vue.js 的框架 ant-design vue pro 实 ...
- sql server 性能调优之 CPU消耗最大资源分析1 (自sqlserver服务启动以后)
一. 概述 上次在介绍性能调优中讲到了I/O的开销查看及维护,这次介绍CPU的开销及维护, 在调优方面是可以从多个维度去发现问题如I/O,CPU, 内存,锁等,不管从哪个维度去解决,都能达到调优的效 ...
- 提高 web 应用性能之 CSS 性能调优
简介 Web 开发中经常会遇到性能的问题,尤其是 Web 2.0 的应用.CSS 代码是控制页面显示样式与效果的最直接“工具”,但是在性能调优时他们通常被 Web 开发工程师所忽略,而事实上不规范的 ...
- 【总结】性能调优:JVM内存调优相关文章
[总结]性能调优:JVM内存诊断工具 [总结]性能调优:CPU消耗分析 [总结]性能调优:消耗分析 JVM性能调优
- [转]提高 web 应用性能之 CSS 性能调优
简介 Web 开发中经常会遇到性能的问题,尤其是 Web 2.0 的应用.CSS 代码是控制页面显示样式与效果的最直接“工具”,但是在性能调优时他们通常被 Web 开发工程师所忽略,而事实上不规范的 ...
- CPU开销sql server 性能调优
sql server 性能调优 CPU开销分析 一. 概述 上次在介绍性能调优中讲到了I/O的开销查看及维护,这次介绍CPU的开销及维护, 在调优方面是可以从多个维度去发现问题如I/O,CPU, 内存 ...
随机推荐
- 教您在79元ARM平台实现H.265视频解码
什么是H.265视频编解码? (1)什么是H.265 H.265,也被称为HEVC(HighEfficiency Video Coding),作为H.264的继任者,提供了更好的视频压缩和更高的视频质 ...
- java 类的执行顺序
java代码 package net.cybclass.sp; public class Test01 { public static void main(String[] args) { new c ...
- js 获取年、月、周、当前日期第几周、这月有那几周
查看当前日期是第几周:https://wannianli.tianqi.com/today/zhou/ //获取完整的日期 var date=new Date; var y = date.getFul ...
- PowerBuilder编程新思维6.5:外传1(PowerPlume的设计与规划)
<第五部分 Otherside 意外的宝藏> 每一颗种子都有发芽的梦想.PowerPlume(孔雀翎)开发交流群:286502392 PowerBuilder编程新思维6.5:外传1 ...
- TypeScript 学习笔记 — 接口的使用(六)
目录 一.函数接口参数 二.函数类型接口 三.函数混合类型 四.对象接口(最常用) 确定属性 可选属性 任意属性 只读属性 可索引接口 索引访问符 类接口 接口继承 构造函数类型 type 和 int ...
- [oeasy]python0100_wintel联盟_intel_微软_microsoft_msDOS_基尔代尔
wintel联盟 回忆上次内容 上次 了解了IBM的 背水一战 IBM 已经不在乎 软硬一体全自主的设计 了 而采用了 开放的架构 任何 硬件厂商和软件厂商 都可以来合作 以丧失 自主控制力的方式 获 ...
- 第一作者解读|我们这篇Nature Communication背后的故事
2024年7月16日,大暑将至,立秋不远.我们基于Python的转录组学全分析框架的文章--"OmicVerse: a framework for bridging and deepenin ...
- GraphRAG介绍
GraphRAG GraphRAG 是一种基于图的检索增强方法,由微软开发并开源.它通过结合LLM和图机器学习的技术,从非结构化的文本中提取结构化的数据,构建知识图谱,以支持问答.摘要等多种应用场景. ...
- vue中的<script setup>与<script>
<script setup>是在vue3.2之后新增的语法糖,简化了API的写法 1.声明的变量无需return,可以直接在模板中使用,实现了顶层的绑定 2.引入组件会自动注册,无需再使用 ...
- 假期小结3Hadoop学习
学习Hadoop是一个很好的选择,因为它是大数据处理和分析领域最流行的框架之一.Hadoop提供了可靠.可扩展的分布式数据处理能力,适用于处理大规模数据和构建可靠的数据管道. 在学习Hadoop时,以 ...