spark RDD iterator中sparkEnv功能 -- (视频笔记)

sparkEnv是spark环境变量

1、可以从其中get 缓存

2、为master workder driver 管理和保存运行时对象。

3、excutorid ,excutor 一种为driver类型,一种具体处理task 内部有线程池的excutor

4、actorSystem ,如果运行在driver 则为spark driver,如果在excutor上在则为spark excutor

5、serializer 序列化器

6、cacheManager

7、mapOutputTracker,它负责保存shuffle map output输出位置信息。

在一个stage中产出的数据通过shuffle write写入到localFileSystem中,具体存储在什么位置,就是由mapOutputTracker跟踪记录的。

master slave 模式,driver 上 则为 mapOutputTrackerMaster,work上则为mapOutputTrackerWorker,worker汇总master获取信息。

8、shuffleManager

hash

sort

可插拔,支持扩展

9、broadcastManager 广播,

例如

join的时候,小的表就可以广播到大的表所在的机器上。

也可以把全局信息广播出去。

spark将任务广播到具体的excutor;hadoop的MR,每次将配置信息登,每个任务都要重新加载。

10、BlockTransferService

读取shuffle数据,有数据大小区别,不同的数据量使用不同的传输方式。Netty方式还是NIO的方式。

11、BlockManager

管理内存和磁盘等。。。管理storage模块本身。

12、securityManager 安全模块

13、HttpFileServer

提供http服务的server,用于excutor下载相关执行jar包的依赖。

14、metricsSystem

用于收集统计信息。

包括excutor的状态,以及任务的状态。

用于做监控工具很管用

15、shuffleMemoryManager

本身是用于管理shuffle执行过程中内存的。

申请和分配shuffle使用的内存,

假设N个线程,每个线程会申请到 1/(2N),最多可以申请到1/N的内存

N是动态变化,线程的数量会变化。

16、 sparkEnv是随着sparkContext创建的。

时间: 2024-06-22 00:56:58

spark RDD iterator中sparkEnv功能 -- (视频笔记)的相关文章

RDD 到底是什么--(视频笔记)

1.RDD 只读的分区数据集合.2.RDD的依赖关系,生成RDD的血统.3.RDD支持基于工作集的运用.可以显性的将数据存储在内存中,可以支持高效数据重用.4.RDD是分布式数据编程的一种抽象5.RDD的特征a list of partitions(hdfs的一个分片就是一个partition,每个分片就是一个task:spark rdd是被分区的,对于RDD来说,每个分区都会被一个计算任务处理,并决定并行计算的粒度,RDD的每次转换操作都会声称新的RDD,在生成RDD时候,一般可以只定分区的数

Apache Spark 2.2.0 中文文档 - Spark RDD(Resilient Distributed Datasets)

Spark RDD(Resilient Distributed Datasets)论文 概要 1: 介绍 2: Resilient Distributed Datasets(RDDs) 2.1 RDD 抽象 2.2 Spark 编程接口 2.2.1 例子 – 监控日志数据挖掘 2.3 RDD 模型的优势 2.4 不适合用 RDDs 的应用 3 Spark 编程接口 3.1 Spark 中 RDD 的操作 3.2 举例应用 3.2.1 线性回归 3.2.2 PageRank 4 表达 RDDs 5

Spark笔记整理(五):Spark RDD持久化、广播变量和累加器

[TOC] Spark RDD持久化 RDD持久化工作原理 Spark非常重要的一个功能特性就是可以将RDD持久化在内存中.当对RDD执行持久化操作时,每个节点都会将自己操作的RDD的partition持久化到内存中,并且在之后对该RDD的反复使用中,直接使用内存缓存的partition.这样的话,对于针对一个RDD反复执行多个操作的场景,就只要对RDD计算一次即可,后面直接使用该RDD,而不需要反复计算多次该RDD. 巧妙使用RDD持久化,甚至在某些场景下,可以将spark应用程序的性能提升1

Apache Spark RDD(Resilient Distributed Datasets)论文

Spark RDD(Resilient Distributed Datasets)论文 概要 1: 介绍 2: Resilient Distributed Datasets(RDDs) 2.1 RDD 抽象 2.2 Spark 编程接口 2.2.1 例子 – 监控日志数据挖掘 2.3 RDD 模型的优势 2.4 不适合用 RDDs 的应用 3 Spark 编程接口 3.1 Spark 中 RDD 的操作 3.2 举例应用 3.2.1 线性回归 3.2.2 PageRank 4 表达 RDDs 5

Spark+hadoop+mllib及相关概念与操作笔记

Spark+hadoop+mllib及相关概念与操作笔记 作者: lw 版本: 0.1 时间: 2016-07-18 1.调研相关注意事项 a) 理解调研 调研的意义在于了解当前情况,挖掘潜在的问题,解决存在的疑问,并得到相应的方案. b) 调研流程 首先明确和梳理现有的疑问是什么,要通过调研解决什么问题,然后再去做调研,发现问题,再解决问题. c) 调研成果 最终需要得到结论与方案,以及详尽的论证理由,让别人信服. d) 书写格式 版本与作者以及时间可以以表格的形式,整齐明了. 结论简洁明了,

Spark RDD到底是个什么东西

前言 用Spark有一段时间了,但是感觉还是停留在表面,对于Spark的RDD的理解还是停留在概念上,即只知道它是个弹性分布式数据集,其他的一概不知 有点略显惭愧.下面记录下我对RDD的新的理解. 官方介绍  弹性分布式数据集. RDD是只读的.分区记录的集合.RDD只能基于在稳定物理存储中的数据集和其他已有的RDD上执行确定性操作来创建. 问题 只要你敢问度娘RDD是什么,包你看到一大片一模一样的答案,都是说这样的概念性的东西,没有任何的价值. 我只想知道 RDD为什么是弹性 而不是 不弹性,

Spark RDD编程(二)

转载请注明出处:http://blog.csdn.net/gamer_gyt @高阳团 博主微博:http://weibo.com/234654758 Github:https://github.com/thinkgamer ============================================================ SparkRDD编程(一) Spark 的键值对(pair RDD)操作,Scala实现 RDD的分区函数 目前Spark中实现的分区函数包括两种 Ha

Spark RDD揭秘

 Spark计算中提供的各种库例如:spark sql,spark machine learning等的底层都是封装的RDD RDD本身提供了通用的抽象,在现有的spark sql, spark streaming, machine learning,图计算以及sqpark R中,可以根据具体的领域的内容为基础扩充和私有化与自己业务相关的库,而它们的通用接口和基石就是Spark RDD. RDD:基于工作集的分布式函数编程的应用抽象,MapReduce是基于数据集的.他们的共同特征是位置感知

Spark3000门徒第14课spark RDD解密总结

今晚听了王家林老师的第14课spark RDD解密,课堂笔记如下: Spark是基于工作集的应用抽象,RDD:Resillient Distributed Dataset是基于工作集的,spark可以对结果重用. 位置感知:spark比hadoop更精致. RDD是lazy的,是分布式函数式编程的抽象,RDD可以看做一个只读的List或者Array.产生的中间结果怎么办? 不能让 他立即计算,采用Lazy级别,只对数据处理做标记.所以RDD操作是有向的,链式的,所以Stage有1000个步骤,不