当前位置: 首页 > news >正文

Spark一些必须知道的概念

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

1.RDD。弹性分布式数据集,是Spark最核心的数据结构。有分区机制,所以可以分布式进行处理。有容错机制,通过RDD之间的依赖关系来恢复数据。

2.依赖关系。RDD的依赖关系是通过各种Transformation(变换)来得到的。父RDD和子RDD之间的依赖关系分两种:①窄依赖  ②宽依赖

①针对窄依赖:父RDD的分区和子RDD的分区关系是:一对一

窄依赖不会发生Shuffle,执行效率高,spark框架底层会针对多个连续的窄依赖执行流水线优化,从而提高性能。例如 map  flatMap等方法都是窄依赖方法

②针对宽依赖:父RDD的分区和子RDD的分区关系是:一对多

宽依赖会产生shuffle,会产生磁盘读写,无法优化。

3.DAG。有向无环图,当一整条RDD的依赖关系形成之后,就形成了一个DAG。一般来说,一个DAG,最后都至少会触发一个Action操作,触发执行。一个Action对应一个Job任务。

4.Stage。一个DAG会根据RDD之间的依赖关系进行Stage划分,流程是:以Action为基准,向前回溯,遇到宽依赖,就形成一个Stage。遇到窄依赖,则执行流水线优化(将多个连续的窄依赖放到一起执行)

5.task。任务。一个分区对应一个task。可以这样理解:一个Stage是一组Task的集合

6.RDD的Transformation(变换)操作:懒执行,并不会立即执行

7.RDD的Action(执行)操作:触发真正的执行

转载于:https://my.oschina.net/u/3701483/blog/3016919

相关文章:

  • Linux系列(5)linux基础命令
  • 08r2活动目录迁移升级2012r2--(DHCP迁移)
  • 唯一分解定理
  • 关于 es6的 let 特性在 for 循环结构 的个人理解
  • 蚂蚁数据分析平台的演进及数据分析方法的应用
  • 从第一行代码开始开发区块链(二)
  • 函数组件与类有什么不同?
  • 通过find文件并对大小求和统计目录大小
  • elasticsearch 占CPU过高
  • Windows本地代码仓库使用连接教程
  • Redis 安装加集群配置
  • 带你快速了解ES1D-E361T
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • dependencies与devDependencies的区别
  • ale.js2.0 更新计划正式发布
  • Docker 笔记(2):Dockerfile
  • DOM的那些事
  • ECMAScript入门(七)--Module语法
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • go语言学习初探(一)
  • NSTimer学习笔记
  • Python学习之路13-记分
  • spring security oauth2 password授权模式
  • SwizzleMethod 黑魔法
  • Windows Containers 大冒险: 容器网络
  • 不上全站https的网站你们就等着被恶心死吧
  • 基于Android乐音识别(2)
  • 日剧·日综资源集合(建议收藏)
  • 深入浅出Node.js
  • 小程序测试方案初探
  • 远离DoS攻击 Windows Server 2016发布DNS政策
  • Spring第一个helloWorld
  • ​批处理文件中的errorlevel用法
  • (6)设计一个TimeMap
  • (C#)Windows Shell 外壳编程系列4 - 上下文菜单(iContextMenu)(二)嵌入菜单和执行命令...
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (分布式缓存)Redis分片集群
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (附源码)计算机毕业设计ssm-Java网名推荐系统
  • (附源码)计算机毕业设计高校学生选课系统
  • (力扣)循环队列的实现与详解(C语言)
  • (未解决)macOS matplotlib 中文是方框
  • (一)认识微服务
  • (转)c++ std::pair 与 std::make
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • ***php进行支付宝开发中return_url和notify_url的区别分析
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .NET delegate 委托 、 Event 事件,接口回调
  • .NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary)
  • .net操作Excel出错解决
  • .net访问oracle数据库性能问题
  • .Net中的集合
  • // an array of int
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)