Spark的failover容错机制是什么
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,这篇文章主要介绍"Spark的failover容错机制是什么",在日常操作中,相信很多人在Spark的failover容错机制是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对
千家信息网最后更新 2025年01月23日Spark的failover容错机制是什么SPARK计算框架使用3种方式来实现整体的failover机制:
1. driver端的checkpoint 在Driver层实现, 用于在Driver崩溃后, 恢复Driver的现场 ;
(注意,这个checkpoint和RDD的checkpoint是两码事)
2. executor端的replication 在Receiver中用于 解决单台executor挂掉后,未保存的数据丢失的问题。 3. WAL: 在Driver和Receiver中实现,用于解决: (1) Driver挂掉,所有executor都会挂掉,那么所有未保存的数据都丢掉了,replication就不管用了;( 数据不丢失的问题) (2) Driver挂掉后, 哪些block在挂掉前注册到了driver中,以及挂掉前哪些block分配给了当时正在运行的batch job, 这些信息就都丢失了;所以需要WAL对这些信息做持久化。( 任务分配的问题) 如果你觉得说的还不够过瘾,可以画个图继续说
说到这里,恭喜你,能够把面试官说懵了。
这个问题能把很多人问懵逼,其实这个五大特性的说法是在Spark的源码里的一段注释,如下:
我简单解释下:
1. partition
partition是数据集的基本组成单位,每个分片都会被一个计算任务处理,决定并行计算的粒度。分片数默认是core的数量。
每个分片的存储是由BlockManager实现的,每个分区都会被逻辑映射成BlockManager的一个Block,而这个Block会被一个Task负责计算。 2. partitioner 一个partitioner,即RDD的分片函数。当前Spark中实现了两种类型的分片函数,一个是基于哈希的HashPartitioner,另外一个基于范围的RangePartitioner。 只有对于key-value的RDD,才会有Partitioner。Partitioner函数不但决定了RDD本身的分片数量,也决定了parent RDD Shuffle输出时的分片数量。 3. compute func Spark中的RDD的计算是以分片为单位的,每个RDD都会实现compute函数以达到这个目的。compute函数会对迭代器进行复合,不需要保存每次计算的结果。 4. dependency RDD的每次转换都会生成一个新的RDD,所以RDD之间就会形成类似于流水线一样的前后依赖关系。
在部分分区数据丢失时,Spark可以通过这个依赖关系重新计算丢失的分区数据,而不是对RDD的所有分区进行重新计算。 5. preferredLocation 一个列表,存储存取每个Partition的优先位置(preferred location),对于一个HDFS文件来说,这个列表保存的就是每个Partition所在的块的位置。 按照"移动数据不如移动计算"的理念,Spark在进行任务调度的时候,会尽可能地将计算任务分配到其所要处理数据块的存储位置。
这篇文章主要介绍"Spark的failover容错机制是什么",在日常操作中,相信很多人在Spark的failover容错机制是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Spark的failover容错机制是什么"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
蓝色的箭头表示读取数据,存储在executor的内存中,如果开启了WAL,将会把数据写入到存在容错文件系统的日志文件中(executor端的wal)
青色的箭头表示提醒driver, 接收到的数据块的元信息发送给driver中的SparkContext, 这些元数据包括:executor内存中数据块的引用ID和日志文件中数据块的偏移信息(driver端的wal)
黄色箭头表示checkpoint这些计算,用于重现driver现场。流式处理会周期的被checkpoint到文件中(driver端的checkpoint)
Spark的RDD的五大特性是什么?
到此,关于"Spark的failover容错机制是什么"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
数据
机制
容错
函数
文件
端的
问题
任务
信息
存储
学习
位置
数量
箭头
分配
内存
单位
日志
更多
特性
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
淮安专业服务器技术指导
绵阳网络安全等级
征途所有大区和服务器
湖湘杯2020网络安全报名
金山区微型网络技术专业服务
网络安全股票最新分析
软件开发实训结论
物联网网络安全技术
荒野行动pc连接上服务器打不开
会昌租房软件开发
数据库采样周期ms
复制服务器文件安全提示
软件开发岗位怎么转行
百联丰服务器
连接香港服务器慢
浦东新区无线网络技术推荐咨询
龙岗服务器运维服务公司
徐州app订制软件开发
网络安全知识宣传黑板报
查看邮箱数据库大小
cs服务器fps
买物理服务器需要多少钱
新浪服务器能看到用户
怎么攻破服务器
2核2g云服务器可以挖矿吗
服务器状态码400
嘉定区网络技术服务流程
我的世界变形服务器手机版
安全客户端访问服务器
计算机考试数据库操作