'聊聊Hadoop、Storm、Spark Streaming、Flink在大數據領域的現狀'

"

Hadoop 生態組件競爭激烈,Spark 優勢明顯,MapReduce 已進入維護模式

曾有開發人員表示,Hadoop 主要是被 MapReduce 拖累了,其實 HDFS 和 YARN 都還不錯。堵俊平( 騰訊雲專家研究員)則認為 MapReduce 拖累 Hadoop 的說法並不準確:

首先 MapReduce 還是有應用場景,只是越來越窄,它仍然適合某些超大規模數據處理的批量任務,且任務運行非常穩定;

其次,Hadoop 社區對於 MapReduce 的定位就是進入維護模式, 並不追求任何新的功能或性能演進,這樣可以讓資源投入到更新的計算框架,比如 Spark、Tez,促進其成熟。

HDFS 和 YARN 目前還是大數據領域分佈式存儲和資源調度系統的事實標準,不過也面臨一些挑戰。

對 HDFS 而言,在公有云領域,越來越多的大數據應用會選擇跳過 HDFS 而直接使用雲上的對象存儲, 這樣比較方便實現計算與存儲分離,增加了資源彈性。

YARN 也面臨著來自 Kubernetes 的強大挑戰,尤其是原生的 docker 支持,更好的隔離性以及上面生態的完整性。不過 K8S 在大數據領域還是追趕者,在資源調度器以及和對各計算框架支持上還有很大的進步空間。

Spark 在計算框架方面基本上佔據了主導地位,MapReduce 主要是一些歷史應用,而 Tez 更像是 Hive 的專屬執行引擎。

"

Hadoop 生態組件競爭激烈,Spark 優勢明顯,MapReduce 已進入維護模式

曾有開發人員表示,Hadoop 主要是被 MapReduce 拖累了,其實 HDFS 和 YARN 都還不錯。堵俊平( 騰訊雲專家研究員)則認為 MapReduce 拖累 Hadoop 的說法並不準確:

首先 MapReduce 還是有應用場景,只是越來越窄,它仍然適合某些超大規模數據處理的批量任務,且任務運行非常穩定;

其次,Hadoop 社區對於 MapReduce 的定位就是進入維護模式, 並不追求任何新的功能或性能演進,這樣可以讓資源投入到更新的計算框架,比如 Spark、Tez,促進其成熟。

HDFS 和 YARN 目前還是大數據領域分佈式存儲和資源調度系統的事實標準,不過也面臨一些挑戰。

對 HDFS 而言,在公有云領域,越來越多的大數據應用會選擇跳過 HDFS 而直接使用雲上的對象存儲, 這樣比較方便實現計算與存儲分離,增加了資源彈性。

YARN 也面臨著來自 Kubernetes 的強大挑戰,尤其是原生的 docker 支持,更好的隔離性以及上面生態的完整性。不過 K8S 在大數據領域還是追趕者,在資源調度器以及和對各計算框架支持上還有很大的進步空間。

Spark 在計算框架方面基本上佔據了主導地位,MapReduce 主要是一些歷史應用,而 Tez 更像是 Hive 的專屬執行引擎。

聊聊Hadoop、Storm、Spark Streaming、Flink在大數據領域的現狀

當前流處理引擎主角 Spark Streaming 和 Flink

流處理方面,早期的流處理引擎 Storm 正在退役,而當前唱主角的則是 Spark Streaming 和 Flink,這兩個流處理引擎各有千秋,前者強在生態,後者則在架構方面有優勢。

"

Hadoop 生態組件競爭激烈,Spark 優勢明顯,MapReduce 已進入維護模式

曾有開發人員表示,Hadoop 主要是被 MapReduce 拖累了,其實 HDFS 和 YARN 都還不錯。堵俊平( 騰訊雲專家研究員)則認為 MapReduce 拖累 Hadoop 的說法並不準確:

首先 MapReduce 還是有應用場景,只是越來越窄,它仍然適合某些超大規模數據處理的批量任務,且任務運行非常穩定;

其次,Hadoop 社區對於 MapReduce 的定位就是進入維護模式, 並不追求任何新的功能或性能演進,這樣可以讓資源投入到更新的計算框架,比如 Spark、Tez,促進其成熟。

HDFS 和 YARN 目前還是大數據領域分佈式存儲和資源調度系統的事實標準,不過也面臨一些挑戰。

對 HDFS 而言,在公有云領域,越來越多的大數據應用會選擇跳過 HDFS 而直接使用雲上的對象存儲, 這樣比較方便實現計算與存儲分離,增加了資源彈性。

YARN 也面臨著來自 Kubernetes 的強大挑戰,尤其是原生的 docker 支持,更好的隔離性以及上面生態的完整性。不過 K8S 在大數據領域還是追趕者,在資源調度器以及和對各計算框架支持上還有很大的進步空間。

Spark 在計算框架方面基本上佔據了主導地位,MapReduce 主要是一些歷史應用,而 Tez 更像是 Hive 的專屬執行引擎。

聊聊Hadoop、Storm、Spark Streaming、Flink在大數據領域的現狀

當前流處理引擎主角 Spark Streaming 和 Flink

流處理方面,早期的流處理引擎 Storm 正在退役,而當前唱主角的則是 Spark Streaming 和 Flink,這兩個流處理引擎各有千秋,前者強在生態,後者則在架構方面有優勢。

聊聊Hadoop、Storm、Spark Streaming、Flink在大數據領域的現狀

一個有意思的情況是,對於 Spark Streaming 和 Flink 的應用在國內外的情況很不一樣,國內已經有大量的公司開始使用 Flink 構建自己的流處理平臺(這可能和阿里在國內大力推廣Flink技術有關係),但美國市場 Spark Streaming 還是佔絕對主流的地位。當然,還有一些新的流處理框架,例如 Kafka Streams 等等,發展得也不錯。

"

Hadoop 生態組件競爭激烈,Spark 優勢明顯,MapReduce 已進入維護模式

曾有開發人員表示,Hadoop 主要是被 MapReduce 拖累了,其實 HDFS 和 YARN 都還不錯。堵俊平( 騰訊雲專家研究員)則認為 MapReduce 拖累 Hadoop 的說法並不準確:

首先 MapReduce 還是有應用場景,只是越來越窄,它仍然適合某些超大規模數據處理的批量任務,且任務運行非常穩定;

其次,Hadoop 社區對於 MapReduce 的定位就是進入維護模式, 並不追求任何新的功能或性能演進,這樣可以讓資源投入到更新的計算框架,比如 Spark、Tez,促進其成熟。

HDFS 和 YARN 目前還是大數據領域分佈式存儲和資源調度系統的事實標準,不過也面臨一些挑戰。

對 HDFS 而言,在公有云領域,越來越多的大數據應用會選擇跳過 HDFS 而直接使用雲上的對象存儲, 這樣比較方便實現計算與存儲分離,增加了資源彈性。

YARN 也面臨著來自 Kubernetes 的強大挑戰,尤其是原生的 docker 支持,更好的隔離性以及上面生態的完整性。不過 K8S 在大數據領域還是追趕者,在資源調度器以及和對各計算框架支持上還有很大的進步空間。

Spark 在計算框架方面基本上佔據了主導地位,MapReduce 主要是一些歷史應用,而 Tez 更像是 Hive 的專屬執行引擎。

聊聊Hadoop、Storm、Spark Streaming、Flink在大數據領域的現狀

當前流處理引擎主角 Spark Streaming 和 Flink

流處理方面,早期的流處理引擎 Storm 正在退役,而當前唱主角的則是 Spark Streaming 和 Flink,這兩個流處理引擎各有千秋,前者強在生態,後者則在架構方面有優勢。

聊聊Hadoop、Storm、Spark Streaming、Flink在大數據領域的現狀

一個有意思的情況是,對於 Spark Streaming 和 Flink 的應用在國內外的情況很不一樣,國內已經有大量的公司開始使用 Flink 構建自己的流處理平臺(這可能和阿里在國內大力推廣Flink技術有關係),但美國市場 Spark Streaming 還是佔絕對主流的地位。當然,還有一些新的流處理框架,例如 Kafka Streams 等等,發展得也不錯。

聊聊Hadoop、Storm、Spark Streaming、Flink在大數據領域的現狀

大數據SQL引擎

在大數據 SQL 引擎方面,四大主流引擎 Hive、SparkSQL、Presto 以及 Impala 仍然各有所長。

Hive 最早由 Facebook 開源貢獻也是早年應用最廣泛的大數據 SQL 引擎,和 MapReduce 一樣,Hive 在業界的標籤就是慢而穩定。其無私地提供了很多公共組件為其他引擎所使用,堪稱業界良心,比如元數據服務 Hive Metastore、查詢優化器 Calcite、列式存儲 ORC 等。近年來,Hive 發展很快,例如查詢優化方面採用了 CBO,在執行引擎方面用 Tez 來替換 MapReduce,通過 LLAP 來 cache 查詢結果做優化,以及 ORC 存儲不斷演進。不過相比較而言,這些新技術從市場應用來說還不算成熟穩定,Hive 仍然被大量用戶定義為可靠的 ETL 工具而非即時查詢產品。

SparkSQL 這兩年發展迅猛,尤其在 Spark 進入 2.x 時代,發展更是突飛猛進。其優秀的 SQL 兼容性(唯一全部 pass TPC-DS 全部 99 個 query 的開源大數據 SQL),卓越的性能、龐大且活躍的社區、完善的生態(機器學習、圖計算、流處理等)都讓 SparkSQL 從這幾個開源產品中脫穎而出,在國內外市場得到了非常廣泛的應用。

Presto 這兩年應用也非常廣泛,這款內存型 MPP 引擎的特點就是處理小規模數據會非常快,數據量大的時候會比較吃力。Impala 的性能也非常優異,不過其發展路線相對封閉,社區生態進展比較緩慢,SQL 兼容性也比較差,用戶群體相對較小。

原文來自知乎平臺( https://zhuanlan.zhihu.com/p/39439760),小編摘錄了部分關於大數據處理框架當前現狀的內容。

"

相關推薦

推薦中...