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

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

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

前言

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

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

在這裏插入圖片描述

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



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

面試題 01、Spark累加器有哪些特點?
面試題02、Spark hashParitioner的弊端是什麼?
面試題 03、RangePartitioner分區的原理?
面試題04、rangePartioner分區器特點?
面試題05、如何理解Standalone模式下,Spark資源分配是粗粒度的?

在這裏插入圖片描述

在這裏插入圖片描述

以下答案僅供參考:

面試題 01、Spark累加器有哪些特點?

1)累加器在全局唯一的,只增不减,記錄全局集群的唯一狀態;
2)在exe中修改它,在driver讀取;
3)executor級別共享的,廣播變量是task級別的共享兩個application不可以共享累加器,但是同一個app不同的job可以共享。

面試題02、spark hashParitioner的弊端是什麼?

HashPartitioner分區的原理很簡單,對於給定的key,計算其hashCode,並除於分區的個數取餘,如果餘數小於0,則用餘數+分區的個數,最後返回的值就是 這個key所屬的分區ID;弊端是數據不均勻,容易導致數據傾斜,極端情况下某幾個分區會擁有rdd的所有數據。

面試題03、RangePartitioner分區的原理?

RangePartitioner分區則盡量保證每個分區中數據量的均勻,而且分區與分區之間是有序的,也就是說一個分區中的元素肯定都是比另一個分區內的元素小 或者大;但是分區內的元素是不能保證順序的。簡單的說就是將一定範圍內的數映射到某一個分區內。其原理是水塘抽樣。

面試題04、RangePartioner分區器特點?

rangePartioner盡量保證每個分區中數據量的均勻,而且分區與分區之間是有序的,一個分區中的元素肯定都是比另一個分區內的元素小或者大; 但是分區內的元素是不能保證順序的。簡單的說就是將一定範圍內的數映射到某一個分區內。RangePartitioner作用:將一定範圍內的數映射到某一個分區內, 在實現中,分界的算法尤為重要。算法對應的函數是rangeBounds。

面試題05、如何理解Standalone模式下,Spark資源分配是粗粒度的?

spark默認情况下資源分配是粗粒度的,也就是說程序在提交時就分配好資源,後面執行的時候使用分配好的資源,除非資源出現了故障才會重新分配。 比如Spark shell啟動,已提交,一注册,哪怕沒有任務,worker都會分配資源給executor。

總結

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

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