Spark调优特殊case- Task倾斜

news2024/9/22 10:02:27

在这里插入图片描述
在这里插入图片描述
首先我们观察下上面的stage5, Task MaxTime=2.4Min, 但是stage5的整体耗时竟然可以达到55Min,
其实分区1000, 300个executor, 按照最大的TaskTime=2.4Min来估算所有Task运行完成时间, 那么时间应该是- 2.4Min * 3 + 2.4Min = 9.6Min
也就是最慢也就跑10分钟就能跑完整个stage, 但却跑了整整55分钟。

在这里插入图片描述
这里我们通过观察executor维度指标来观察, 发现大量的task的被集中到同一个executor上面,所以问题的根本是task的分配不均匀, 虽然后期spark的推理优化kill掉部分在executor运行较慢的task, 但是kill掉不合理的task不多, 整个task的分布还是很不合理。
这里主要跟一个计算概念有关, 就是让"数据离计算越近越好", 总之就是

  • memory > local file > same rack file > any file
  • 内存 > 本地文件 > 同一个机架的文件 > 可能在任何地方的文件
    所以Spark在task进行分配的时候, 也是秉承着这个原则, 但使用的术语不太一样, 这里就不细说了。
    可以在task的维度指标的locality level来查看task使用的数据来源。
    在这里插入图片描述
    解决该问题的思路, 就是使在分配任务的时候拒绝遵循"数据离计算越近越好", 让task合理分配到不同的机器, spark.locality.wait表示在放弃并在非本地节点上启动数据本地任务之前,等待启动数据本地任务需要多长时间,默认值为3s。
    当初我看得到3s的时候, 猜这个启动数据本地任务应该是一个lazy的操作, 只是把任务添加到线程池的任务队列, 不然不会产生分配不均匀, 这个观点待考究。
    这里直接将spark.locality.wait=0, 重新跑了一遍该作业, 查看了stage5的运行时间由- 55Min -> 3 Min 降低了52Min
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    其实spark提供了更加细致的调控数据源远近的waitTime:
    spark.locality.wait.process
    spark.locality.wait.node
    spark.locality.wait.rack
    上面这三个的默认值都是spark.locality.wait

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【时时三省】(C语言基础)函数和数组

山不在高,有仙则名。水不在深,有龙则灵。 ——csdn时时三省 函数 跟数学里面的函数很相似 数组 一组相同类型的元素的集合 比如把5个整形1-5存起来 int arr[10]={1,2,3&#x…

StyleGAN——定制人脸生成思路

定制人脸生成思路 控制生成码 ( Z ) 的分布范围:适合粗略控制生成图像的主要特征(如性别、人种、年龄),方法简单但精度较低。特定维度特征的替换:适用于细致控制图像的特征(如皮肤颜色、发型)&…

贪吃蛇超精讲(C语言)

前言 如果你还是个萌新小白,那么该项目的攻克过程一定会十分艰难。虽然作者已经将文章尽可能写的逻辑清晰,内容详细。但所谓“纸上得来终觉浅”,在讲到陌生结构和函数时,大家请一定自己动手去敲一遍代码,这很重要&…

Opencv学习项目3——人脸识别

之前我们获取了一张图像的人脸信息,现在我们来使用特征点分析来匹配两张lyf照片的相似度 获取两张图片的人脸信息 import cv2 import face_recognition# 加载图像文件 img1 face_recognition.load_image_file(lyf1.png) img2 face_recognition.load_image_file(l…

昇思25天学习打卡营第13天 | 模型训练

深入理解模型训练的关键步骤 在深入学习深度学习模型训练的过程中,我获得了宝贵的经验和理解,尤其是在构建数据集、定义模型、调整超参数以及实际的训练和评估过程中。以下是我对这些关键步骤的一些心得体会。 1. 构建数据集 数据集的构建是模型训练成…

(11)Python引领金融前沿:投资组合优化实战案例

1. 前言 本篇文章为 Python 对金融的投资组合优化的示例。投资组合优化是从一组可用的投资组合中选择最佳投资组合的过程,目的是最大限度地提高回报和降低风险。 投资组合优化是从一组可用的投资组合中选择最佳投资组合的过程,目的是最大限度地提高回报…

第四周:机器学习笔记

第四周学习周报 摘要Abstract机器学习任务攻略1.loss on training data1.1 training data的loss过大怎么办?1.2 training data的loss小,但是testing data loss大怎么办? 2. 如何选择一个中最好的模型?2.1 Cross Validation&#x…

前端调试技巧:动态高亮渲染区域

效果: 前端界面的渲染过程、次数,会通过高亮变化来显示,通过这种效果排除一些BUG 高亮 打开方式 F12进入后点击ESC,进入rendering,选择前三个即可(如果没有rendering,点击橘色部分勾选上&…

docker compose 容器 编排分组

遇到问题:执行docker compose up -d 后docker compose 创建的容器们 在desktop-docker 中都在docker下一堆 搜索想着能不能把这个docker名字改一下,但是都没有找到这样的一个方案; 最后发现,我执行docker compose up -d 命令所在…

昇思25天学习打卡营第26天 | GAN图像生成

学习心得:GAN 图像生成 在最近完成的项目中,我利用生成对抗网络(GAN)进行了图像生成的实践学习。通过这一过程,我不仅加深了对GAN的理解,而且对于深度学习在图像处理领域的应用有了更实际的把握。以下是我…

Android屏幕适配度量单位px、ppi、dpi、dp、sp等

目录 0 前言1 屏幕尺寸2 像素 px3 分辨率4 每英寸像素数ppi5 屏幕密度 dpi6 密度无关像素 dp7 缩放无关像素sp 0 前言 我以iphone13举例,说来挺有意思,我们这做Android开发的只有一位平常用的是Android手机。 可以看到下面有6.1英寸、分辨率、ppi等。接…

MQTT micro-ROS:构建高效的机器人应用

什么是 micro-ROS? 在之前的 MQTT & FreeRTOS:打造你的远程控制实时应用 中,我们介绍了如何在 FreeRTOS 中构建你的 MQTT 应用。 FreeRTOS 主要应用在对实时性要求较高的场景中,但这类 RTOS 专注于提供实时任务调度和同步机…

使用Vuepress搭建个人网站

网站地址:bloggo.chat

GraphRAG参数与使用步骤 | 基于GPT-4o-mini实现更便宜的知识图谱RAG

首先给兄弟朋友们展示一下结论,一个文本18万多字,txt文本大小185K,采用GraphRAG,GPT-4o-mini模型,索引耗时差不多5分钟,消耗API价格0.15美元 GraphRAG介绍 GraphRAG是微软最近开源的一款基于知识图谱技术的框架&#…

新版SpringSecurity5.x使用与配置

目录 一、了解SpringSecurity 1.1 什么是Spring Security? 1.2 Spring Security功能 1.3 Spring Security原理 1.4 RABC (Role-Based Access Control) 二、SpringSecurity简单案例 2.1 引入SpringSecurity依赖 2.2 创建一个简单的Controller 三、SpringSecu…

【数据结构】初识集合框架

🎇🎉🎉🎉点进来你就是我的人了 博主主页:🙈🙈🙈戳一戳,欢迎大佬指点! 人生格言: 当你的才华撑不起你的野心的时候,你就应该静下心来学习! 欢迎志同道合的朋友…

自己编写一个谷歌浏览器插件, 模拟某音直播间自动发消息

闲来没事, 做个插件玩一玩,于是一顿学习。 按照浏览器插件规范,一顿代码编写, 搞了一个简单的插件。仅做学习。 可以实现在直播间自动发消息。 定时轮发。 实现原理: 利用谷歌popub.js 发送消息。 在content-script.…

【无人机】低空经济中5G RedCap芯片的技术分析报告

1. 引言 图一. 新基建:低空经济 低空经济作为一种新兴的经济形态,涵盖了无人机、电动垂直起降飞行器(eVTOL)、低空物流、空中交通管理等多个领域。随着5G网络的普及和演进,5G RedCap(Reduced Capability&a…

【功能】DOTween动画插件使用

一、下载安装DOTween插件,下载地址:DOTween - Asset Store (unity.com) 使用 Free免费版本即可,导入成功后,Project视图中会出现 DOTween 文件夹 二、使用案例 需求1:控制材质球中的某个属性值,实现美术需…

MS17-010漏洞复现+利用

1、 漏洞简述 漏洞名称:“永恒之蓝”漏洞 漏洞编号:MS17-010,CVE-2017-0143/0144/0145/0146/0147/0148 漏洞类型:缓冲区溢出漏洞 漏洞影响:信息泄露 CVSS评分:9.3(High) 利用难…