欢迎光临散文网 会员登陆 & 注册

锁屏面试题百日百刷-Spark篇(六)

2023-03-16 21:21 作者:zjlala96  | 我要投稿

 锁屏面试题百日百刷,每个工作日坚持更新面试题。锁屏面试题app、小程序现已上线,官网地址:https://www.demosoftware.cn。已收录了每日更新的面试题的所有内容,还包含特色的解锁屏幕复习面试题、每日编程题目邮件推送等功能。让你在面试中先人一步!接下来的是今日的面试题:


1.Spark的小文件读取?

2.如何理解Spark的RDD数据结构分区?


3.Spark何时缓存数据

4.Spark的Job调度模式

用户通过不同的线程提交的Job可以并发运行,但是受到资源的限制。Job到调度池(pool)内申请资源,调度池会根据工程的配置,决定采用哪种调度模式。

FIFO模式

在默认情况下,Spark的调度器以FIFO(先进先出)方式调度Job的执行。每个Job被切分为多个Stage。第一个Job优先获取所有可用的资源,接下来第二个Job再获取剩余资源。以此类推,如果第一个Job并没有占用所有的资源,则第二个Job还可以继续获取剩余资源,这样多个Job可以并行运行。如果第一个Job很大,占用所有资源,则第二个Job就需要等待第一个任务执行完,释放空余资源,再申请和分配Job。如果是相同的Job不同的Stage,则优先执行较早的Stage。

在FAIR共享模式调度下,Spark在多Job之间以轮询(round robin)方式为任务分配资源,所有的任务拥有大致相当的优先级来共享集群的资源。这就意味着当一个长任务正在执行时,短任务仍可以分配到资源,提交并执行,并且获得不错的响应时间。这样就不用像以前一样需要等待长任务执行完才可以。这种调度模式很适合多用户的场景。

从spark0.8开始,可以配置公平调度器,spark 分配tasks是以一种轮询的方式,短的job可以提前被执行完。可以在sparkContext中设置spark.scheduler.mode=FAIR

锁屏面试题百日百刷-Spark篇(六)的评论 (共 条)

分享到微博请遵守国家法律