溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Spark運行架構(gòu)的特點及優(yōu)勢是什么

發(fā)布時間:2021-12-17 14:06:57 來源:億速云 閱讀:656 作者:柒染 欄目:編程語言

Spark運行架構(gòu)的特點及優(yōu)勢是什么,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

Spark作為一種分布式的計算框架,類似于大數(shù)據(jù)開發(fā)中Hadoop生態(tài)圈的MapReduce,計算思想和MR非常相似,兩者都是分而治之的思想,但使用率要比MR高很多。下面整理了關(guān)于Spark運行架構(gòu)的大數(shù)據(jù)面試題,內(nèi)容包括Spark運行的基本流程、架構(gòu)特點、優(yōu)勢。

Spark運行架構(gòu)的特點及優(yōu)勢是什么

1、Spark 運行基本流程:

(1)構(gòu)建 Spark Application 的運行環(huán)境(啟動 SparkContext),SparkContext 向資源管理器(可以是 Standalone、Mesos 或 YARN)注冊并申請運行 Executor 資源;

(2)資源管理器分配 Executor 資源并啟動 Executor,Executor 運行情況將隨著心跳發(fā)送到資源管理器上;

(3)SparkContext 構(gòu)建成 DAG 圖,將 DAG 圖分解成 Stage,并把 Taskset發(fā)送給 Task Scheduler。Executor 向 SparkContext 申請 Task,Task Scheduler 將Task 發(fā)放給 Executor 運行同時 SparkContext 將應(yīng)用程序代碼發(fā)放給 Executor。

(4)Task 在 Executor 上運行,運行完畢釋放所有資源。

2、Spark 運行架構(gòu)特點:

(1)每個 Application 獲取專屬的 executor進程,該進程在 Application 期間一直駐留,并以多線程方式運行 tasks。

(2)Spark 任務(wù)與資源管理器無關(guān),只要能夠獲取 executor 進程,并能保持相互通信就可以了。

(3)提交 SparkContext 的 Client 應(yīng)該靠近 Worker 節(jié)點(運行 Executor 的節(jié)點),最好是在同一個 Rack 里,因為 Spark 程序運行過程中 SparkContext 和Executor 之間有大量的信息交換;如果想在遠程集群中運行,最好使用 RPC 將SparkContext 提交給集群,不要遠離 Worker 運行 SparkContext。

(4)Task 采用了數(shù)據(jù)本地性和推測執(zhí)行的優(yōu)化機制。

3、Spark的優(yōu)勢:

(1)計算效率高

資源復(fù)用;粗粒度的資源調(diào)度。

(2)使用方便

支持使用多門語言來編寫;提供了超過80多種方法來供我們使用。

(3)通用性強

Spark生態(tài)圈中的組件都是基于SparkCore封裝起來的。

(4)適應(yīng)性強

可以接受上百種數(shù)據(jù)源;可以運行在各種各樣的資源調(diào)度框架上。

看完上述內(nèi)容,你們掌握Spark運行架構(gòu)的特點及優(yōu)勢是什么的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI