Spark学习笔记—源码内核(看天书,跳了,停更)

一、内核

Spark核心组件

环境——Yarn

Driver

        Spark驱动器节点,用于执行Spark任务中的main方法,负责实际代码的执行工作。Driver在Spark作业执行时主要负责:

1)将用户程序转化为作业(Job);

2)在Executor之间调度任务(Task);

3)跟踪Executor的执行情况;

4)通过UI展示查询运行情况;

Executor

Spark Executor 对象是负责在 Spark 作业中运行具体任务,任务彼此之间相互独立。Spark 应用启动时,ExecutorBackend 节点被同时启动,并且始终伴随着整个 Spark 应用的生命周 期而存在。如果有 ExecutorBackend 节点发生了故障或崩溃,Spark 应用也可以继续执行, 会将出错节点上的任务调度到其他 Executor 节点上继续运行。

Executor 有两个核心功能:

1) 负责运行组成 Spark 应用的任务,并将结果返回给驱动器(Driver);

2) 它们通过自身的块管理器(Block Manager)为用户程序中要求缓存的 RDD 提供内存式存储。RDD 是直接缓存在 Executor 进程内的,因此任务可以在运行时充分利用缓存数据加速运算。

 二、部署模式

Spark 支持多种集群管理器(Cluster Manager),分别为:

1) Standalone:独立模式,Spark 原生的简单集群管理器,自带完整的服务,可单独部署到 一个集群中,无需依赖任何其他资源管理系统,使用 Standalone 可以很方便地搭建一个 集群;

2) Hadoop YARN:统一的资源管理机制,在上面可以运行多套计算框架,如 MR、Storm 等。根据 Driver 在集群中的位置不同,分为 yarn client(集群外)和 yarn cluster(集群 内部)

3) Apache Mesos:一个强大的分布式资源管理框架,它允许多种不同的框架部署在其上, 包括 Yarn。

4) K8S : 容器式部署环境。

        实际上,除了上述这些通用的集群管理器外,Spark 内部也提供了方便用户测试和学习 的本地集群部署模式和 Windows 环境。由于在实际工厂环境下使用的绝大多数的集群管理 器是 Hadoop YARN,因此我们关注的重点是 Hadoop YARN 模式下的 Spark 集群部署。

YARN机制

YARN Cluster

 YARN Client

 三、通信机制

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值