国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

鎖屏面試題百日百刷-Spark篇(十七)

2023-03-29 23:22 作者:zjlala96  | 我要投稿

鎖屏面試題百日百刷,每個(gè)工作日?qǐng)?jiān)持更新面試題。鎖屏面試題app、小程序現(xiàn)已上線(xiàn),官網(wǎng)地址:https://www.demosoftware.cn。已收錄了每日更新的面試題的所有內(nèi)容,還包含特色的解鎖屏幕復(fù)習(xí)面試題、每日編程題目郵件推送等功能。讓你在面試中先人一步!接下來(lái)的是今日的面試題:


1.rdd有幾種操作類(lèi)型?

1)transformation,rdd由一種轉(zhuǎn)為另一種rdd

2)action

3)cronroller,crontroller是控制算子,cache,persist,對(duì)性能和效率的有很好的支持

三種類(lèi)型,不要回答只有2種操作

2.collect功能是什么,其底層是怎么實(shí)現(xiàn)的?

答:driver通過(guò)collect把集群中各個(gè)節(jié)點(diǎn)的內(nèi)容收集過(guò)來(lái)匯總成結(jié)果,collect返回結(jié)果是Array類(lèi)型的,collect把各個(gè)節(jié)點(diǎn)上的數(shù)據(jù)抓過(guò)來(lái),抓過(guò)來(lái)數(shù)據(jù)是Array型,collect對(duì)Array抓過(guò)來(lái)的結(jié)果進(jìn)行合并,合并后Array中只有一個(gè)元素,是tuple類(lèi)型(KV類(lèi)型的)的。

3.Spark程序執(zhí)行,有時(shí)候默認(rèn)為什么會(huì)產(chǎn)生很多task,怎么修改默認(rèn)task執(zhí)行個(gè)數(shù)?

1)因?yàn)檩斎霐?shù)據(jù)有很多task,尤其是有很多小文件的時(shí)候,有多少個(gè)輸入

block就會(huì)有多少個(gè)task啟動(dòng);

2)spark中有partition的概念,每個(gè)partition都會(huì)對(duì)應(yīng)一個(gè)task,task越多,在處理大規(guī)模數(shù)據(jù)的時(shí)候,就會(huì)越有效率。不過(guò)task并不是越多越好,如果平時(shí)測(cè)試,或者數(shù)據(jù)量沒(méi)有那么大,則沒(méi)有必要task數(shù)量太多。

3)參數(shù)可以通過(guò)spark_home/conf/spark-default.conf配置文件設(shè)置:

spark.sql.shuffle.partitions 50

spark.default.parallelism 10

第一個(gè)是針對(duì)spark sql的task數(shù)量

第二個(gè)是非spark sql程序設(shè)置生效

4.為什么Spark Application在沒(méi)有獲得足夠的資源,job就開(kāi)始執(zhí)行了,可能會(huì)導(dǎo)致什么問(wèn)題發(fā)生?

答:會(huì)導(dǎo)致執(zhí)行該job時(shí)候集群資源不足,導(dǎo)致執(zhí)行job結(jié)束也沒(méi)有分配足夠的資源,分配了部分Executor,該job就開(kāi)始執(zhí)行task,應(yīng)該是task的調(diào)度線(xiàn)程和Executor資源申請(qǐng)是異步的;如果想等待申請(qǐng)完所有的資源再執(zhí)行job的需要將spark.scheduler.maxRegisteredResourcesWaitingTime設(shè)置的很大;

spark.scheduler.minRegisteredResourcesRatio?設(shè)置為1,但是應(yīng)該結(jié)合實(shí)際考慮否則很容易出現(xiàn)長(zhǎng)時(shí)間分配不到資源,job一直不能運(yùn)行的情況。

5.Spark為什么要持久化,一般什么場(chǎng)景下要進(jìn)行persist操作?為什么要進(jìn)行持久化?

spark所有復(fù)雜一點(diǎn)的算法都會(huì)有persist身影,spark默認(rèn)數(shù)據(jù)放在內(nèi)存,spark很多內(nèi)容都是放在內(nèi)存的,非常適合高速迭代,1000個(gè)步驟

只有第一個(gè)輸入數(shù)據(jù),中間不產(chǎn)生臨時(shí)數(shù)據(jù),但分布式系統(tǒng)風(fēng)險(xiǎn)很高,所以容易出錯(cuò),就要容錯(cuò),rdd出錯(cuò)或者分片可以根據(jù)血統(tǒng)算出來(lái),如果沒(méi)有對(duì)父rdd進(jìn)行persist?或者cache的化,就需要重頭做。以下場(chǎng)景會(huì)使用persist

1)某個(gè)步驟計(jì)算非常耗時(shí),需要進(jìn)行persist持久化

2)計(jì)算鏈條非常長(zhǎng),重新恢復(fù)要算很多步驟,很好使,persist

3)checkpoint所在的rdd要持久化persist,

lazy級(jí)別,框架發(fā)現(xiàn)有checnkpoint,checkpoint時(shí)單獨(dú)觸發(fā)一個(gè)job,需要重算一遍,checkpoint前,要持久化,寫(xiě)個(gè)rdd.cache或者rdd.persist,將結(jié)果保存起來(lái),再寫(xiě)checkpoint操作,這樣執(zhí)行起來(lái)會(huì)非???,不需要重新計(jì)算rdd鏈條了。checkpoint之前一定會(huì)進(jìn)行persist。

4)shuffle之后為什么要persist,shuffle要進(jìn)性網(wǎng)絡(luò)傳輸,風(fēng)險(xiǎn)很大,數(shù)據(jù)丟失重來(lái),恢復(fù)代價(jià)很大

5)shuffle之前進(jìn)行persist,框架默認(rèn)將數(shù)據(jù)持久化到磁盤(pán),這個(gè)是框架自動(dòng)做的。

鎖屏面試題百日百刷-Spark篇(十七)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
建阳市| 长垣县| 台北市| 繁峙县| 江孜县| 宜城市| 门头沟区| 蕉岭县| 灵武市| 宜兴市| 茶陵县| 晋宁县| 龙里县| 兴隆县| 乌拉特后旗| 阿鲁科尔沁旗| 防城港市| 麻栗坡县| 子洲县| 合水县| 北碚区| 静海县| 科技| 克拉玛依市| 馆陶县| 金乡县| 安吉县| 喀喇沁旗| 柳江县| 惠来县| 山东省| 旌德县| 孟村| 新安县| 同心县| 城市| 岳西县| 二连浩特市| 社旗县| 如东县| 太康县|