大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day24——Spark11
Posted manor的大数据奋斗之路
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day24——Spark11相关的知识,希望对你有一定的参考价值。
前言
大家好,我是程序员
manor
。作为一名大数据专业学生、爱好者,深知面试重要性,很多学生已经进入暑假模式,暑假也不能懈怠,正值金九银十
的秋招
接下来我准备用30天
时间,基于大数据开发岗面试中的高频面试题,以每日5题的形式,带你过一遍常见面试题及恰如其分的解答。相信只要一路走来,日积月累,我们终会在最高处见。
以古人的话共勉:道阻且长,行则将至;行而不辍,未来可期!
本栏目大数据开发岗高频面试题主要出自
大数据技术
专栏的各个小专栏,由于个别笔记上传太早,排版杂乱,后面会进行原文美化、增加。
文章目录
停🤚
不要往下滑了,
默默想5min,
看看这5道面试题你都会吗?
面试题 01、spark.default.parallelism这个参数有什么意义,实际生产中如何设置?
面试题02、spark.shuffle.memoryFraction参数的含义,以及优化经验?
面试题 03、Spark中standalone模式特点,有哪些优点和缺点?
面试题04、FIFO调度模式的基本原理、优点和缺点?
面试题05、FAIR调度模式的优点和缺点?
以下答案仅供参考:
面试题 01、spark.default.parallelism这个参数有什么意义,实际生产中如何设置?
1)参数用于设置每个stage的默认task数量。这个参数极为重要,如果不设置可能会直接影响你的Spark作业性能;
2)很多人都不会设置这个参数,会使得集群非常低效,你的cpu,内存再多,如果task始终为1,那也是浪费, spark官网建议task个数为CPU的核数*executor的个数的2~3倍。
面试题02、spark.shuffle.memoryFraction参数的含义,以及优化经验?
1)spark.shuffle.memoryFraction是shuffle调优中 重要参数,shuffle从上一个task拉去数据过来,要在Executor进行聚合操作, 聚合操作时使用Executor内存的比例由该参数决定,默认是20%如果聚合时数据超过了该大小,那么就会spill到磁盘,极大降低性能;
2)如果Spark作业中的RDD持久化操作较少,shuffle操作较多时,建议降低持久化操作的内存占比,提高shuffle操作的内存占比比例, 避免shuffle过程中数据过多时内存不够用,必须溢写到磁盘上,降低了性能。此外,如果发现作业由于频繁的gc导致运行缓慢,意味着task执行用户代码的内存不够用, 那么同样建议调低这个参数的值。
面试题03、Spark中standalone模式特点,有哪些优点和缺点?
1)特点: (1)standalone是master/slave架构,集群由Master与Worker节点组成,程序通过与Master节点交互申请资源,Worker节点启动Executor运行; (2)standalone调度模式使用FIFO调度方式; (3)无依赖任何其他资源管理系统,Master负责管理集群资源。
2)优点: (1)部署简单; (2)不依赖其他资源管理系统。
3)缺点: (1)默认每个应用程序会独占所有可用节点的资源,当然可以通过spark.cores.max来决定一个应用可以申请的CPU cores个数; (2)可能有单点故障,需要自己配置master HA。
面试题04、FIFO调度模式的基本原理、优点和缺点?
基本原理:按照先后顺序决定资源的使用,资源优先满足最先来的job。
第一个job优先获取所有可用的资源,接下来第二个job再获取剩余资源。 以此类推,如果第一个job没有占用所有的资源,那么第二个job还可以继续获取剩余资源,这样多个job可以并行运行,如果第一个job很大,占用所有资源, 则第二job就需要等待,等到第一个job释放所有资源。
优点和缺点:
1)适合长作业,不适合短作业;
2)适合CPU繁忙型作业(计算时间长,相当于长作业),不利于IO繁忙型作业(计算时间短,相当于短作业)。
面试题05、FAIR调度模式的优点和缺点?
所有的任务拥有大致相当的优先级来共享集群资源,spark多以轮训的方式为任务分配资源,不管长任务还是端任务都可以获得资源,并且获得不错的响应时间, 对于短任务,不会像FIFO那样等待较长时间了,通过参数spark.scheduler.mode 为FAIR指定。
总结
今天我们复习了面试中常考的Spark相关的五个问题,你做到心中有数了么?
其实做这个专栏我也有私心,就是希望借助每天写一篇面试题,督促自己学习,以免在面试期间尴尬!平时不流汗,面试多流泪!
对了,如果你的朋友也在准备面试
,请将这个系列扔给他,
好了,今天就到这里,学废了的同学,记得在评论区留言:打卡
。给同学们以激励。
以上是关于大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day24——Spark11的主要内容,如果未能解决你的问题,请参考以下文章
大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day23——Spark10
大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day24——Spark11
大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day25——Spark12
大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day25——Spark12