大數據開發崗面試複習30天沖刺 - 日積月累,每日五題【Day20】——Spark7

manor的大數據奮鬥之路 2021-08-15 21:36:58 阅读数:853

本文一共[544]字,预计阅读时长:1分钟~
每日 day20 day spark7 spark

前言

大家好,我是程序員manor。作為一名大數據專業學生、愛好者,深知面試重要性,很多學生已經進入暑假模式,暑假也不能懈怠,正值金九銀十的秋招
接下來我准備用30天時間,基於大數據開發崗面試中的高頻面試題,以每日5題的形式,帶你過一遍常見面試題及恰如其分的解答。

相信只要一路走來,日積月累,我們終會在最高處見。
以古人的話共勉:道阻且長,行則將至;行而不輟,未來可期!

在這裏插入圖片描述

本欄目大數據開發崗高頻面試題主要出自大數據技術專欄的各個小專欄,由於個別筆記上傳太早,排版雜亂,後面會進行原文美化、增加。



不要往下滑了,
默默想5min,
看看這5道面試題你都會嗎?

面試題 01、Spark on Mesos中,什麼是的粗粒度分配,什麼是細粒度分配,各自的優點和缺點是什麼?
面試題02、driver的功能是什麼?
面試題 03、Spark技術棧有哪些組件,每個組件都有什麼功能,適合什麼應用場景?
面試題04、Spark中Worker的主要工作是什麼?
面試題05、Mapreduce和Spark的都是並行計算,那麼他們有什麼相同和區別?

在這裏插入圖片描述

在這裏插入圖片描述

以下答案僅供參考:

面試題 01、為什麼要進行序列化序列化?

可以减少數據的體積,减少存儲空間,高效存儲和傳輸數據,不好的是使用的時候要反序列化,非常消耗CPU。 配,用完了就立即回收資源,啟動會麻煩一點,啟動一次分配一次,會比較麻煩。

面試題02、Yarn中的container是由誰負責銷毀的,在Hadoop Mapreduce中container可以複用麼?

ApplicationMaster負責銷毀,在Hadoop Mapreduce不可以複用,在spark on yarn程序container可以複用。

面試題03、不啟動Spark集群Master和work服務,可不可以運行Spark程序?

可以,只要資源管理器第三方管理就可以,如由yarn管理,spark集群不啟動也可以使用spark;spark集群啟動的是work和master,這個其實就是資源管理框架, yarn中的resourceManager相當於master,NodeManager相當於worker,做計算是Executor,和spark集群的work和manager可以沒關系,歸根接底還是JVM的運行, 只要所在的JVM上安裝了spark就可以。

面試題04、 RDD通過Linage(記錄數據更新)的方式為何很高效?

1)lazy記錄了數據的來源,RDD是不可變的,且是lazy級別的,且RDD之間構成了鏈條,lazy是彈性的基石。由於RDD不可變,所以每次操作就產生新的rdd, 不存在全局修改的問題,控制難度下降,所有有計算鏈條將複雜計算鏈條存儲下來,計算的時候從後往前回溯 900步是上一個stage的結束,要麼就checkpoint。
2)記錄原數據,是每次修改都記錄,代價很大如果修改一個集合,代價就很小,官方說rdd是粗粒度的操作,是為了效率,為了簡化,每次都是操作數據集合, 寫或者修改操作,都是基於集合的rdd的寫操作是粗粒度的,rdd的讀操作既可以是粗粒度的也可以是細粒度,讀可以讀其中的一條條的記錄。
3)簡化複雜度,是高效率的一方面,寫的粗粒度限制了使用場景如網絡爬蟲,現實世界中,大多數寫是粗粒度的場景。

面試題05、spark on yarn Cluster 模式下,ApplicationMaster和driver是在同一個進程麼?

是,driver 比特於ApplicationMaster進程中。該進程負責申請資源,還負責監控程序、資源的動態情况。

總結

今天我們複習了面試中常考的Spark相關的五個問題,你做到心中有數了麼?
其實做這個專欄我也有私心,就是希望借助每天寫一篇面試題,督促自己學習,以免在面試期間尷尬!平時不流汗,面試多流淚!
對了,如果你的朋友也在准備面試,請將這個系列扔給他,
好了,今天就到這裏,學廢了的同學,記得在評論區留言:打卡。給同學們以激勵。
在這裏插入圖片描述

版权声明:本文为[manor的大數據奮鬥之路]所创,转载请带上原文链接,感谢。 https://gsmany.com/2021/08/20210815213646775c.html