工業(yè)大數據處理領域的“網紅”——Apache Spark
4. 可融合性
Spark可以運行在standalone、YARN、Mesos、Kubernetes及EC2多種調度平臺上。其中Standalone模式不依賴第三方的資源管理器和調度器,這樣降低了Spark的使用門檻,使得所有人可以非常容易地部署和使用Spark。
Spark可以處理所有Hadoop支持的數據,包括HDFS、Apach HBase、Apach Kudu、Apach Cassanda等。這對于已部署Hadoop集群的用戶特別重要,因為不需要做任何數據遷移就可以使用Spark強大的處理能力。
三、 Spark 相比MapReduce優(yōu)勢
Spark與MapReduce 同為計算框架,但作為后起之秀,Spark借鑒了MapReduce,并在其基礎上進行了改進,使得算法性能明顯優(yōu)于MapReduce,下面大致總結一下兩者差異:
1) Spark把運算的中間數據存放在內存,迭代計算效率更高;MapReduce的中間結果需要落地到磁盤,磁盤io操作多,影響性能。
2) Spark容錯性高,它通過Lineage機制實現RDD算子的高效容錯,某一部分丟失或者出錯,可以通過整個數據集的計算流程的血緣關系來實現重建;MapReduce的話容錯可能只能重新計算了,成本較高。
3) Spark更加通用,Spark提供了transformation和action這兩大類的多個功能算子,操作更為方便;MapReduce只提供了map和reduce兩種操作。
4) Spark框架和生態(tài)更為復雜,首先有RDD、血緣lineage、執(zhí)行時的有向無環(huán)圖DAG、stage劃分等等,很多時候spark作業(yè)都需要根據不同業(yè)務場景的需要進行調優(yōu)已達到性能要求;MapReduce框架及其生態(tài)相對較為簡單,對性能的要求也相對較弱,但是運行較為穩(wěn)定,適合長期后臺運行。
四、 Spark與工業(yè)互聯網平臺
工業(yè)互聯網帶來了工業(yè)數據的快速發(fā)展,對于日益增加的海量數據,傳統(tǒng)單機因本身的軟硬件限制無法應對海量數據的處理、分析以及深度挖掘,但作為分布式計算框架的Spark卻能輕松應付這些場景。在工業(yè)互聯網平臺上,Spark 既能快速實現工業(yè)現場海量流數據的處理轉換,又能輕松應對工業(yè)大數據平臺中海量數據的快速批處理分析,自身集成的機器學習框架能夠對海量工業(yè)數據進行深度挖掘分析,從而幫助管理者進行決策分析。
基于Spark框架自身的優(yōu)良設計理念以及社區(qū)的蓬勃發(fā)展狀態(tài),相信未來Spark會在工業(yè)互聯網平臺扮演越來越重要的角色。
本文作者: 黃歡,格創(chuàng)東智大數據工程師 (轉載請注明來源及作者)
請輸入評論內容...
請輸入評論/評論長度6~500個字