首页 > 编程语言 >01-从WordCount程序理解Spark术语及术语间的关系

01-从WordCount程序理解Spark术语及术语间的关系

时间:2024-07-27 16:30:20浏览次数:17  
标签:术语 01 shuffle WordCount Application Job 算子 Stage

1. 应用程序(Application)

通过下面的代码设置应用程序名称,设置后再UI中可以看到相应的名称。

//1.设置Application的名称
val conf = new SparkConf()
conf.setAppName("WordCount")
conf.setMaster("local")

2. 作业(Job)

Job由scala的执行算子生成,每个执行的算子会调起runjob,从而生成一个job。

res.foreach(println)
value.foreach(println)

3. 阶段(Stage)

Stage表是任务执行的阶段,以聚合类算子为分界点划分stage,聚合类的算子需要经过shuffle的过程,也就是需要从其他的结点拉取数据,因此shuffle前的stage是的操作是可以在同一个节点完成。

val res = dataSets.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_ + _)

val value = res.map(x => {
      (x._2, 1)
    }).reduceByKey((ordVal: Int, newVal: Int) => {
      ordVal + newVal
})

4.Application,Job,Stage,Task的关系

一个Application可以生成多个Job,每个Job由执行算子生成。一个Job以shuffle类算子为分界点,将job划分成不同的阶段(Stage)。每个stage有多个task执行。

标签:术语,01,shuffle,WordCount,Application,Job,算子,Stage
From: https://www.cnblogs.com/crispy-bro/p/18327111

相关文章

  • P2024 [NOI2001] 食物链
    原题链接题解关系具有矢量特性,因此可以带权并查集维护code#include<bits/stdc++.h>#definelllonglongusingnamespacestd;intfa[50006];intval[50006];intfinds(intnow){if(now==fa[now])returnnow;inttem=fa[now];fa[now]=finds(fa[now])......
  • [RCTF2015]EasySQL 1
    目录题目分析源码分析注入位置正则过滤注入方式注入题目分析这道题目给源码了,但别人貌似都是黑盒做的,不管了,代码审计启动!源码分析注入位置注入的位置在changepwd.php<?phpsession_start();header("Content-Type:text/html;charset=UTF-8");require_on......
  • [题解]P2672 [NOIP2015 普及组] 推销员
    P2672[NOIP2015普及组]推销员为了便于操作,将住户信息按疲劳值从大到小排序。那么对于选\(X\)个住户,有\(2\)种情况:选疲劳值前\(X\)大的住户,答案即为\(\sum\limits_{i=1}^Xa[i]+2\times\max\limits_{i=1}^Xs[i]\)。选疲劳值前\(X-1\)大的住户,然后在剩下的住户中,距离比......
  • 算法力扣刷题记录 五十八【701.二叉搜索树中的插入操作】
    前言本文是二叉搜索树操作。二叉树篇继续。一、题目阅读给定二叉搜索树(BST)的根节点root和要插入树中的值value,将值插入二叉搜索树。返回插入后二叉搜索树的根节点。输入数据保证,新值和原始二叉搜索树中的任意节点值都不同。注意,可能存在多种有效的插入方式,只......
  • (BS ISO 11898-1:2015)CAN_FD 总线协议详解5- MAC子层描述1
    目录5.MAC子层描述5.1总则5.2MAC子层的服务5.2.1服务描述5.2.2服务原语规范5.2.2.1概述5.2.2.2MA_Data.Request5.2.2.3MA_Data.Indication功能MA_Data.Indication 原始的语义收到原始的效果5.2.2.4MA_Data.Confirm功能MA_Data.Confirm 原始的语义5.2.......
  • DAY10 栈与队列part01
     理论基础文章讲解:https://programmercarl.com/%E6%A0%88%E4%B8%8E%E9%98%9F%E5%88%97%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html232.用栈实现队列 注意为什么要用两个栈题目链接/文章讲解/视频讲解:https://programmercarl.com/0232.%E7%94%A8%E6%A0%88%E5%AE%9E%E7%8E%......
  • 《动手做科研 》| 01.AI的最新进展与科研应用
    地址链接:《动手做科研》01.AI的最新进展与科研应用导读:该部分介绍AI的最新进展以及在科研各个领域的应用目前AI发展到什么程度了?哪些问题可以尝试用AI解决呢?如何快速构建一个属于自己的AI应用程序?本教程目标:与语言模型交互,使用零样本和少样本学习来测试其能力。学......
  • 0基础学嵌入式day01
    一、C语言概述    1、什么是程序        程序是为了解决某些问题或者实现某些功能的一系列有序指令的集合。    2、计算机语言简史        第一代机器语言:由0和1组成的二进制机器码。        第二代汇编......
  • 【待做】【AI+安全】数据集:HTTP DATASET CSIC 2010
    HTTPDATASETCSIC2010HTTPDATASETCSIC2010包含已经标注过的针对Web服务的请求。该数据集由西班牙最高科研理事会CSIC在论文ApplicationoftheGenericFeatureSelectionMeasureinDetectionofWebAttacks中作为附件给出的,是一个电子商务网站的访问日志,包含36000......
  • [ZJCTF 2019]NiZhuanSiWei
    [ZJCTF2019]NiZhuanSiWeiStep1开靶机,获得php源码<?php$text=$_GET["text"];$file=$_GET["file"];$password=$_GET["password"];if(isset($text)&&(file_get_contents($text,'r')==="welcometothezjctf......