spark集群模式概览

2023-05-16

本文简短概述下spark如何在集群上运行,使得更简单地理解涉及到的组件。可以通过读”应用提交指南”来学习在一个集群上加载应用。
组件
spark应用作为独立的进程集运行在集群上,在主应用(称为驱动程序)中通过SparkContext来协调调度。
特别地,运行在集群上,SparkContext能够连接多种类型的集群管理者(spark自己的集群管理,Mesos或YARN),实现跨应用分配资源。一旦连接上,spark需要集群节点上的执行者进程为你的应用运行计算和存储数据。接下来会发送你的应用代码(由发送给Spark
Context的JAR或Python文件定义)给执行者。最后,SparkContext发送任务为给执行者运行。这里写图片描述
这个结构中有些有用的事项需要注意:
1、每个应用有自己的执行进程,会保留到整个应用周期,以多线程方式运行任务。这样在调度(每个驱动调度自己的任务)和执行(来自不同应用的任务运行在不同的JVM中)方面有隔离应用的益处。然后,这样也意味着数据无法跨不同的spark应用(SparkContext实例)共享,除非把数据写入额外的存储系统中。
2、spark对于底层集群管理器是不可知。只要它能获取执行进程,并且进程间相互沟通,那么spark运行在支持其他应用的集群管理器(比如Mesos/YARN)上就相对简单。
3、驱动程序必须监听和接受整个生命周期(参见spark.driver.port in the network config section)中从执行者进程中进来的连接。按这样,驱动程序对于工作节点来说必须是网络可寻址的。
4、因为驱动调度集群中的任务,运行应该靠近工作节点,优先选择相同的本地区域网络。如果你想远程请求集群,最好是打开一个RPC给驱动,并从近处提交操作,而不是在离工作节点远处运行驱动。

集群管理器类型
系统目前支持三种集群管理器:
1、standalone—spark内置的简单集群管理器,方便创建集群
2、Apache Mesos—通用集群管理器,能够运行Hadoop MapReduce和服务程序。
3、Hadoop YARN—Hadoop2中的资源管理器。
4、Kubernetes(实验性的)—除了以上,还对Kubernetes提供实验性的支持。Kubernetes是一个开源平台,提供以容器为中心的基础设施。Kubernetes支持正在apache-spark-on-k8s Github组织中积极开发。文档见项目的README。
提交应用
使用spark-submit脚本可以提交应用给任意一种集群。应用提交指南 描述了如何去做。
监控
每个驱动程序有一个网页界面,一般使用4040端口,呈现有关正在运行的任务、执行者和存储使用情况的信息。简单地在网页浏览器中访问http://:4040就可以使用界面。监控指南 描述了其他的监控选项。
工作调度
Spark控制着跨应用(在集群管理器层面)和应用间(如果一个SparkContext上有多个计算工作)的资源分配。工作调度概述 做了更具体的描述。
词汇表
下面的表格总结了谈到集群概念时会看到的术语。

TermMeaning
application建立在Spark上的用户应用,由一个驱动程序和集群上的执行者组成
application jarjar包含用户的Spark应用。有时候用户会建立一个“uber jar”,包含应用和它的依赖。用户jar不应该包括Hadoop或Spark库,这些会在运行时加进来。
Driver program运行应用main()函数和创建SparkContext的进程
Cluster manager获取集群资源的外部服务(比如独立管理器、Mesos、YARN)
deploy node判别驱动程序运行的地方。在集群模式下,框架在集群内部启动驱动。在客户端模式下,提交者在集群外部启动驱动。
worker node集群中能够运行应用代码的任何节点
executerworker node中为一个应用启动的进程,然后运行任务,保留跨任务的数据在内存或硬盘上。每个应用都有自己的执行者。
task发给一个执行者的一组工作
job并行计算包含多个tasks,这些tasks由Spark action回复催生。你会在驱动日志中看到。
stage每个工作分成更小的任务集,称为stages,彼此以来(类似于MapReduce中的map和reduce stage);你会在驱动日志中看到。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

spark集群模式概览 的相关文章

  • windows下安装spark及hadoop

    windows下安装spark 1 安装jdk 2 安装scala 3 下载spark spark下载地址 3 1安装spark 将下载的文件解压到一个目录 注意目录不能有空格 比如说不能解压到C Program Files 作者解压到了这
  • Spark基础知识(个人总结)

    声明 1 本文为我的个人复习总结 并非那种从零基础开始普及知识 内容详细全面 言辞官方的文章 2 由于是个人总结 所以用最精简的话语来写文章 3 若有错误不当之处 请指出 一 Spark概述 Spark模块 Core SQL Streami
  • Kafka传输数据到Spark Streaming通过编写程序java、scala程序实现操作

    一 案例说明 现有一电商网站数据文件 名为buyer favorite1 记录了用户对商品的收藏数据 数据以 t 键分割 数据内容及数据格式如下 二 前置准备工作 项目环境说明 Linux Ubuntu 16 04 jdk 7u75 lin
  • 大数据面试题Spark篇(1)

    目录 1 spark数据倾斜 2 Spark为什么比mapreduce快 3 hadoop和spark使用场景 4 spark宕机怎么迅速恢复 5 RDD持久化原理 6 checkpoint检查点机制 7 checkpoint和持久化的区别
  • 重新定义分析 - EventBridge 实时事件分析平台发布

    对于日志分析大家可能并不陌生 在分布式计算 大数据处理和 Spark 等开源分析框架的支持下 每天可以对潜在的数百万日志进行分析 事件分析则和日志分析是两个完全不同的领域 事件分析对实时性的要求更高 需要磨平事件领域中从半结构化到结构化的消
  • 【Spark系列2】reduceByKey和groupByKey区别与用法

    在spark中 我们知道一切的操作都是基于RDD的 在使用中 RDD有一种非常特殊也是非常实用的format pair RDD 即RDD的每一行是 key value 的格式 这种格式很像Python的字典类型 便于针对key进行一些处理
  • Hadoop完全分布式集群——Hadoop 配置

    前面已完成VMware虚拟机安装与配置 参考前一篇Hadoop完全分布式集群 VMware虚拟机安装与配置 夏雨和阳阳的博客 CSDN博客 下面将进行Hadoop 配置 一 slave1 slave2节点配置修改 slave1 slave2
  • 基于Spark的电商用户行为实时分析可视化系统(Flask-SocketIO)

    基于Spark的电商用户行为实时分析可视化系统 Flask SocketIO 项目简介 该项目已上线蓝桥课程 有需要的可凭邀请码 UB5mdLbl 学习哦 有优惠 课程地址 https www lanqiao cn courses 2629
  • Spark大数据分析与实战笔记(第一章 Scala语言基础-3)

    文章目录 1 3 Scala的数据结构 1 3 1 数组 数组的遍历 数组转换 1 3 2 元组 创建元组 获取元组中的值 拉链操作 1 3 3 集合 List Set Map 1 3 Scala的数据结构 对于每一门编程语言来说 数组 A
  • 大数据spark开发入门教程

    大数据是互联网发展的方向 大数据人才是未来的高薪贵族 随着大数据人才的供不应求 大数据人才的薪资待遇也在不断提升 如果你也想进入大数据行业 也想学习大数据技术 大数据讲师认为 可以先从spark技术开始 一 Spark是什么 Spark是一
  • Impala presto hbase hive sparksql

    Impala 技术点梳理 http www cnblogs com TiestoRay p 10243365 html Impala 优点 实时性查询 计算的中间结果不写入磁盘 缺点 对于内存的依赖过于严重 内存溢出直接导致技术任务的失败
  • spark中repartition和coalesce的区别

    总的来讲 两者 对是否允许shuffle 不同 coalesce numPartitions shuffle false repartition numPartitions repartition 其实是 coalesce 中参数shuff
  • Hudi和Kudu的比较

    与Kudu相比 Kudu是一个支持OLTP workload的数据存储系统 而Hudi的设计目标是基于Hadoop兼容的文件系统 如HDFS S3等 重度依赖Spark的数据处理能力来实现增量处理和丰富的查询能力 Hudi支持Increme
  • 11.Linux下Spark的安装配置以及spark-shell的启动和 Spark集群环境搭建

    本案例软件包 链接 https pan baidu com s 1zABhjj2umontXe2CYBW DQ 提取码 1123 若链接失效在下面评论 我会及时更新 目录 1 安装Spark 1 先用xftp将安装包传到home hadoo
  • Spark学习(文件读取路径)

    在不同的启动模式下 加载文件时的路径写法是不一样的 对于local模式下 默认就是读取本地文件 而在standlone或者yarn client 或者cluster模式下 默认读的都是hdfs文件系统 这几种模式下很难读取本地文件 这是很显
  • spark-3.1.2兼容多版本hive

    2 3 9版本Hive的支持 直接在实例化SparkSession时 启用hive支持即可 例如 val spark SparkSession builder appName Spark Hive Example config spark
  • 通过yarn提交作业到spark,运行一段时间后报错。

    加粗样式
  • Spark常用参数解释

    Spark的默认配置文件位于堡垒机上的这个位置 SPARK CONF DIR spark defaults conf 用户可以自行查看和理解 需要注意的是 默认值优先级最低 用户如果提交任务时或者代码里明确指定配置 则以用户配置为先 用户再
  • 2023_Spark_实验二十九:Flume配置KafkaSink

    实验目的 掌握Flume采集数据发送到Kafka的方法 实验方法 通过配置Flume的KafkaSink采集数据到Kafka中 实验步骤 一 明确日志采集方式 一般Flume采集日志source有两种方式 1 Exec类型的Source 可
  • spark相关

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 pandas是什么 二 使用步骤 1 引入库 2 读入数据 总结 前言 提示 这里可以添加本文要记录的大概内容 例如 随着人工智能的不断发展 机器学习这门

随机推荐

  • oracle-plsql初步使用

    之前使用Oracle数据库都是通过jdbc接口调用oracle 最近由于工作的关系需要通过tns操作Oracle数据库 xff0c 于是把最近学习和收集的一点内容记录下来 xff0c 以便以后再次使用时参考 概念先行概念落地登陆常用sql利
  • ubuntu on win10

    开启大门 设置 安全和更新 针对开发人员 使用开发人员功能 开发人员模式控制面板 程序和功能 启用和关闭windows功能 适用于Linux的windows子系统 xff08 beta xff09 进入cmd命令窗口 xff0c 输入bas
  • Lamp环境搭建和ucenter/ucenterhome

    环境 xff1a Centos 7 3 1611 步骤 xff1a 安装apache php软件 xff1a yum install httpd php php mysql安装mysql mariadb xff0c 以Centos系统为例
  • win10安装系统自带应用

    以管理员身份启动系统自带的Windows Powershell组件 xff0c 接着输入Get AppxPackage allusers Select Name PackageFullName xff0c 通过该命令获取当前系统安装的所有应
  • SQL DDL从MySQL到Oracle

    最新一个项目的sql ddl为MySQL准备的 xff0c 我想在Oracle中使用 之前不太了解两者的区别 xff0c 结果报错一坨 于是顶着头皮开始看什么问题 xff0c 以下是我陷过的坑 xff0c 让大家看看 废话少说 xff0c
  • 7 MySQL安全概述

    1 常见因素 密码 常见的密码要求 xff1a 包含大小写 数字 特殊字符限制 长度 不要保存密码明文 为防止彩虹表 xff0c 也不要简单的使用hash方法 xff0c 可以采用hash hash password 43 salt 的方式
  • 关于SIFT和SURF介绍

    SIFT xff08 尺度不变特征变换 xff09 关于一些角点检测技术 xff0c 比如 Harris 等 它们具有旋转不变特性 xff0c 即使图片发生了旋转 xff0c 我们也能找到同样的角点 xff0c 但如果进行图像缩放 xff0
  • 7.2 MySQL权限系统原理

    MySQL权限系统的用户接口由SQL语句组成 xff0c 比如create user xff0c grant xff0c revoke 在数据库内部 xff0c MySQL把权限信息保存在MySQL database的赋权表中 MySQL服
  • 7.2.1 MySQL提供的权限

    MySQL提供的权限应用于不同的上下文和不同的操作级别 xff1a 管理权限使用户可以管理MySQL服务器的操作 这些权限是全局性的 xff0c 因为它们不是局限于某个特定的数据库 数据库权限应用于数据库和数据库的组成对象 这些权限可以被赋
  • 7.3 MySQL用户账号管理

    7 3 1用户名称和密码 MySQL把账号存储在mysql系统数据库的user表中 一个账号被定义成一个用户名称和能够连接到服务器的客户端主机 xff08 群 xff09 账号都有一个密码 MySQL支持授权插件 xff0c 也就是说一个账
  • 7 Oracle 管理用户和安全

    用户和安全概览 用户账号由一个用户名确认 xff0c 定义了用户的属性包括 xff1a 鉴权方式 数据库鉴权密码 永久存储和临时存储的默认表空间 表空间配额 账号状态 xff08 是否锁定 xff09 密码状态 xff08 是否过期 xff
  • linux-bash-find

    FIND 1 General Commands Manual FIND 1 1 NAME find search for files in a directory hierarchy 2 SYNOPSIS find H L P D debu
  • awk、任务管理

    awk awk F 39 39 39 span class hljs operator span class hljs keyword BEGIN span l 61 span class hljs number 0 span span c
  • java数据结构和算法

    常见的数据结构 数组 gt 方便通过下标随机访问数据 有序数组无序数组数组大小一旦确定无法变更栈 先进后出只能压入 xff08 push xff09 查看 xff08 peek xff09 删除 xff08 pop xff09 栈顶无法查找
  • spring概述

    spring框架主要包括以上几个方面
  • 查看进程_端口的命令

    1 Windows平台 在windows控制台窗口下执行 xff1a netstat nao findstr 9010 TCP 127 0 0 1 9010 0 0 0 0 0 LISTENING 3017 你看到是PID为3017的进程占
  • hadoop学习记录—2.8.2documentation—mapreduce Tutorial

    1 概况 hadoop MapReduce是一个软件框架 xff0c 在这个框架上可以很容易编写以可靠 容错地运行在大量廉价硬件组成的集群 xff08 上千节点 xff09 上 并行地处理大量数据 xff08 数TB数据集 xff09 的程
  • 服务器使用windows server 2008修改密码步骤教程

    1 进入服务器后右击计算机 xff0c 点击管理 xff0c 进入服务器管理器 2 在服务器管理器里面双击配置 xff08 打开下一列 xff09 双击本地用户和组 xff08 打开下一列 xff09 点击用户 3 右击Administra
  • yarn结构-2.9.0

    YARN最基本的想法就是把资源管理和任务调度 监听功能分成独立的守护进程 这个想法就是有一个全局的ResourceManager xff08 RM xff09 和每个应用独自的ApplicationMaster xff08 AM xff09
  • spark集群模式概览

    本文简短概述下spark如何在集群上运行 xff0c 使得更简单地理解涉及到的组件 可以通过读 应用提交指南 来学习在一个集群上加载应用 组件 spark应用作为独立的进程集运行在集群上 xff0c 在主应用 xff08 称为驱动程序 xf