溫馨提示×

溫馨提示×

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

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

怎樣理解Spark的基本原理

發(fā)布時間:2021-12-17 14:04:07 來源:億速云 閱讀:133 作者:柒染 欄目:大數(shù)據(jù)

怎樣理解Spark的基本原理,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

1

Spark優(yōu)勢特點

作為大數(shù)據(jù)計算框架 MapReduce 的繼任者,Spark 具備以下優(yōu)勢特性。

01

高效性

不同于 MapReduce 將中間計算結(jié)果放入磁盤中,Spark 采用內(nèi)存存儲中間計算結(jié)果,減少了迭代運算的磁盤 IO,并通過并行計算 DAG 圖的優(yōu)化,減少了不同任務(wù)之間的依賴,降低了延遲等待時間。內(nèi)存計算下,Spark 比 MapReduce 快 100 倍。

02

易用性

不同于 MapReduce 僅支持 Map 和 Reduce 兩種編程算子,Spark 提供了超過 80 種不同的 Transformation 和 Action 算子,如map, reduce, filter, groupByKey, sortByKey, foreach 等,并且采用函數(shù)式編程風(fēng)格,實現(xiàn)相同的功能需要的代碼量極大縮小。

03

通用性

Spark 提供了統(tǒng)一的解決方案。Spark 可以用于批處理、交互式查詢(Spark SQL)、實時流處理(Spark Streaming)、機器學(xué)習(xí)(Spark MLlib)和圖計算(GraphX)。

這些不同類型的處理都可以在同一個應(yīng)用中無縫使用。這對于企業(yè)應(yīng)用來說,就可使用一個平臺來進行不同的工程實現(xiàn),減少了人力開發(fā)和平臺部署成本。

04

兼容性

Spark 能夠跟很多開源工程兼容使用。如 Spark 可以使用 Hadoop 的 YARN 和 Apache Mesos 作為它的資源管理和調(diào)度器,并且 Spark 可以讀取多種數(shù)據(jù)源,如 HDFS、HBase、MySQL 等。02

Spark基本概念

RDD:是彈性分布式數(shù)據(jù)集(Resilient Distributed Dataset)的簡稱,是分布式內(nèi)存的一個抽象概念,提供了一種高度受限的共享內(nèi)存模型。

DAG:是 Directed Acyclic Graph(有向無環(huán)圖)的簡稱,反映 RDD 之間的依賴關(guān)系。

Driver Program:控制程序,負(fù)責(zé)為 Application 構(gòu)建 DAG 圖。

Cluster Manager:集群資源管理中心,負(fù)責(zé)分配計算資源。

Worker Node:工作節(jié)點,負(fù)責(zé)完成具體計算。

Executor:是運行在工作節(jié)點(Worker Node)上的一個進程,負(fù)責(zé)運行 Task,并為應(yīng)用程序存儲數(shù)據(jù)。

Application:用戶編寫的 Spark 應(yīng)用程序,一個 Application 包含多個 Job。

Job:作業(yè),一個 Job 包含多個 RDD 及作用于相應(yīng) RDD 上的各種操作。

Stage:階段,是作業(yè)的基本調(diào)度單位,一個作業(yè)會分為多組任務(wù),每組任務(wù)被稱為“階段”。

Task:任務(wù),運行在 Executor 上的工作單元,是 Executor 中的一個線程。

總結(jié):Application 由多個 Job 組成,Job 由多個 Stage 組成,Stage 由多個 Task 組成。Stage 是作業(yè)調(diào)度的基本單位。

03

Spark架構(gòu)設(shè)計

Spark 集群由 Driver, Cluster Manager(Standalone, Yarn 或 Mesos),以及 Worker Node 組成。對于每個 Spark 應(yīng)用程序,Worker Node 上存在一個 Executor 進程,Executor 進程中包括多個 Task 線程。

關(guān)于怎樣理解Spark的基本原理問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。

向AI問一下細(xì)節(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