首页 > 其他分享 >Spark中driver、executor、job、stage、task、partition你懂吗?

Spark中driver、executor、job、stage、task、partition你懂吗?

时间:2024-03-21 22:59:49浏览次数:26  
标签:task partition driver application job executor stage

        对于一个要提交到大数据集群的spark任务而言,准确说这个任务应该叫一个application,因为application是分布式任务,因此需要分配到多台机器中运行,而为了方便每个application的自我管理,这个多台机器中会有一台机器被选为小组长来管理整个application,而这个小组长的名字就叫driver,其他干活的组员也叫executor;每个executor对应一个jvm进程,所有对数据的计算都在executor的内部进行,每个executor默认只分配一个CPU核心,因此在同一时刻就只能处理一个task,如果分配多个CPU核心则可以同时处理多个task。

        粗略认为partition的数量就等同于task的数量,只不过partiton最初是由数据源的分布情况来确定,比如一个1G的HDFS数据源刚好占用了8个block,它对应的spark的partition数量就是8,每处理一个非空的partition就叫一个task。

        对于任何一个application来说会存在若干个job,以及每个job中会存在若干个stage,而一个application有多少个job由代码中有多少个action算子来决定,最简单的application就只有一个action算子那么就只有一个job,而每个job中有多少个stage就看每一个job的处理逻辑中有多少次的shuffle操作,如果没有shuffle则只有一个stage,而如果有N个shuffle,那么就会有N+1个stage。

标签:task,partition,driver,application,job,executor,stage
From: https://blog.csdn.net/2301_79551573/article/details/136922401

相关文章

  • 1、postgres通过partition做表分区
    目录postgres通过partition做范围表分区1、安装pg_partman扩展2、创建需要分区表,按学生的入学时间分区3、创建分区4、插入数据5、查询分区表6、不需要子分区时7、直接插入子分区表时。8、navicat可以查看到分区的表与分区的维度postgres通过partition做范围表分区表分区是将一个......
  • <sa8650>sa8650 partition-之-新增分区加img
    <sa8650>sa8650partition-之-新增分区加img一、前言二、新增分区2.1新增用户分区2.2生成新分区文件2.3确认新分区文件2.4rawprogram文件参数解析2.5新增分区验证三、镜像文件3.1新增water.img编译脚本3.2新增water.img编译脚本运行3.3新增water......
  • | [0/8] Installing [email protected][npminstall:get] retry GET https://registry.npm.tao
    昨天用开源项目UIRecorder初始化时报错,查看日志发现是淘宝的源证书过期,如下:PSE:\20231213\uirecorder\uirecorder_test>PSE:\20231213\uirecorder\uirecorder_test>uirecorderinit____________......
  • datawhale-动手学数据分析task4笔记
    动手学数据分析task4数据可视化matplotlib的图像都位于figure对象中,创建新的对象用plt.figure。plt.subplot()方法可以更方便地创建一个新figure,并返回一个含有以创建的subplot对象的numpy数组。'''参数说明:nrows=int,subplot的行数ncols=int,subplot的列数sharex=Bool......
  • Clique Partition
    哎,就差一个考虑上下界啊!来看看官解首先一个连通块的大小不可能超过\(k\),比较显然当\(n>k\)的时候,我们将点连续的分成\(\lceil\frac{n}{k}\rceil\)个,然后考虑\(n=k\)的情形官解是这么分权值的其实我考试的时候想出来这个的,手搓几次样例就可以发现了。。但是我却没有利用上......
  • macos selenium msedgedriver 浏览器驱动 爬虫
    MacOSSelenium跨浏览器环境搭建在macOS上使用Selenium启动新版Edge的方式如下。macOS版本:10.15.5Edge版本:83.0.478.58下载83版本对应的新版Edge驱动:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/#downloads解压并移动到/usr/loca......
  • task2
    `//从键盘上输入三个数据作为三角形边长,判断其能否构成三角形//构成三角形的条件:任意两边之和大于第三边include<stdio.h>include<stdlib.h>intmain(){floata,b,c;//输入三边边长scanf("%f%f%f",&a,&b,&c);//判断能否构成三角形//补足括号里的逻辑表达......
  • task3
    `#include<stdlib.h>include<stdio.h>intmain(){charans1,ans2;//用于保存用户输入的答案printf("每次课前认真预习、课后及时复习了没?(输入y或Y表示有,输入n或N表示没有):");ans1=getchar();//从键盘输入一个字符,赋值给ans1getchar();//思考这里为什么......
  • 驱动Driver-platform平台驱动
    驱动的分隔与分离platform平台驱动platform总线platform驱动platform设备......
  • ssts-hospital-web-master项目实战记录三十三:项目迁移-核心模块实现(useDeviceDriver-
    一、设备驱动模块实现service/device-driver/ezware/function-ws/idc-motor-device.tsimport{EventFunctionType,EventResultType}from'@/types'import{EZMessageType,EZWebSocket}from'./ez-web-socket'classIdcMotor{ client:EZWebSocket......