最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

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

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

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


1.Mapreduce和Spark的都是并行計算,那么他們有什么相同和區(qū)別

答:兩者都是用mr模型來進行并行計算:

1)hadoop的一個作業(yè)稱為job,job里面分為map task和reduce task,每個task都是在自己的進程中運行的,當task結束時,進程也會結束。

2)spark用戶提交的任務成為application,一個application對應一個sparkcontext,app中存在多個job,每觸發(fā)一次action操作就會產生一個job。這些job可以并行或串行執(zhí)行,每個job中有多個stage,stage是shuffle過程中DAGSchaduler通過RDD之間的依賴關系劃分job而來的,每個stage里面有多個task,組成taskset有TaskSchaduler

分發(fā)到各個executor中執(zhí)行,executor的生命周期是和app一樣的,即使沒有job運行也是存在的,所以task可以快速啟動讀取內存進行計算。

3)hadoop的job只有map和reduce操作,表達能力比較欠缺而且在mr過程中會重復的讀寫hdfs,造成大量的io操作,多個job需要自己管理關系。

spark的迭代計算都是在內存中進行的,API中提供了大量的RDD操作如join,groupby等,而且通過DAG圖可以實現(xiàn)良好的容錯。

2.spark工作機制?

答:用戶在client端提交作業(yè)后,會由Driver運行main方法并創(chuàng)建spark context上下文。

執(zhí)行add算子,形成dag圖輸入dagscheduler,按照add之間的依賴關系劃分stage輸入task scheduler。Task scheduler會將stage劃分為task set分發(fā)到各個節(jié)點的executor中執(zhí)行。

3.spark的優(yōu)化怎么做?

答:spark調優(yōu)比較復雜,但是大體可以分為三個方面來進行,1)平臺層面的調優(yōu):防止不必要的jar包分發(fā),提高數(shù)據(jù)的本地性,選擇高效的存儲格式如parquet,2)應用程序層面的調優(yōu):過濾操作符的優(yōu)化降低過多小任務,降低單條記錄的資源開銷,處理數(shù)據(jù)傾斜,復用RDD進行緩存,作業(yè)并行化執(zhí)行等等,3)JVM層面的調優(yōu):設置合適的資源量,設置合理的JVM,啟用高效的序列化方法如kyro,增大off head內存等等

4.描述Yarn執(zhí)行一個任務的過程?

1)客戶端client向ResouceManager提交Application,ResouceManager接受Application

并根據(jù)集群資源狀況選取一個node來啟動Application的任務調度器driver(ApplicationMaster)

2)ResouceManager找到那個node,命令其該node上的nodeManager來啟動一個新的

JVM進程運行程序的driver(ApplicationMaster)部分,driver(ApplicationMaster)啟動時會首先向ResourceManager注冊,說明由自己來負責當前程序的運行。

3)driver(ApplicationMaster)開始下載相關jar包等各種資源,基于下載的jar等信息決定向ResourceManager申請具體的資源內容。

4)ResouceManager接受到driver(ApplicationMaster)提出的申請后,會最大化的滿足

資源分配請求,并發(fā)送資源的元數(shù)據(jù)信息給driver(ApplicationMaster);

5)driver(ApplicationMaster)收到發(fā)過來的資源元數(shù)據(jù)信息后會根據(jù)元數(shù)據(jù)信息發(fā)指令給具體機器上的NodeManager,讓其啟動具體的container。

6)NodeManager收到driver發(fā)來的指令,啟動container,container啟動后必須向driver(ApplicationMaster)注冊。

7)driver(ApplicationMaster)收到container的注冊,開始進行任務的調度和計算,直到任務完成。

補充:如果ResourceManager第一次沒有能夠滿足driver(ApplicationMaster)的資源請求,后續(xù)發(fā)現(xiàn)有空閑的資源,會主動向driver(ApplicationMaster)發(fā)送可用資源的元數(shù)據(jù)信息以提供更多的資源用于當前程序的運行。

鎖屏面試題百日百刷-Spark篇(十一)的評論 (共 條)

分享到微博請遵守國家法律
江油市| 汝城县| 岳阳县| 江门市| 长武县| 荆门市| 视频| 新邵县| 西贡区| 象州县| 香格里拉县| 云南省| 城市| 樟树市| 商丘市| 开远市| 兰考县| 运城市| 上杭县| 宜宾县| 曲靖市| 莆田市| 河北区| 科技| 英山县| 鲁山县| 乌拉特中旗| 三河市| 天等县| 成安县| 盐津县| 明水县| 长子县| 宁阳县| 甘谷县| 凌海市| 三亚市| 隆尧县| 长泰县| 西城区| 金门县|