弄清Spark、Storm、MapReduce的這幾點區別才能學好大資料

來源:互聯網
上載者:User

標籤:0基礎   分析   一個   min   java   面試題   name   包括   mapreduce   

很多初學者在剛剛接觸大資料的時候會有很多疑惑,比如對MapReduce、Storm、Spark三個計算架構的理解經常會產生混亂。

哪一個適合對大量資料進行處理?哪一個又適合對即時的流資料進行處理?又該如何來區分他們呢?

我對比整理了這3個計算架構的基本知識,大家可以瞭解一下以便對這個3個計算架構有一個整體的認識。
大資料學習群119599574

MapReduce
  • 分布式離線計算架構

  • 主要適用於大批量的叢集任務,由於是批量執行,故時效性偏低。

  • 原生支援 Java 語言開發 MapReduce ,其它語言需要使用到 Hadoop Streaming 來開發。

Spark
  • Spark 是專為大規模資料處理而設計的快速通用的計算引擎,其是基於記憶體的迭代式計算。

  • Spark 保留了MapReduce 的優點,而且在時效性上有了很大提高,從而對需要迭代計算和有較高時效性要求的系統提供了很好的支援。

  • 開發人員可以通過Java、Scala或者Python等語言進行資料分析作業編寫,並使用超過80種進階運算子。

  • Spark與HDFS全面相容,同時還能與其它Hadoop組件—包括YARN以及HBase並行協作。

  • Spark可以被用於處理多種作業類型,比如即時資料分析、機器學習與圖形處理。多用於能容忍小延時的推薦與計算系統。

Storm
  • Storm是一個分布式的、可靠的、容錯的流式計算架構。

  • Storm 一開始就是為即時處理設計,因此在即時分析/效能監測等需要高時效性的領域廣泛採用。

  • Storm在理論上支援所有語言,只需要少量代碼即可完成適配。

  • Storm把叢集的狀態存在Zookeeper或者本地磁碟,所以後台進程都是無狀態的(不需要儲存自己的狀態,都在zookeeper上),可以在不影響系統健康啟動並執行同時失敗或重啟。

  • Storm可應用於--資料流處理、持續計算(持續地向用戶端發送資料,它們可以即時的更新以及展現資料,比如網站指標)、分布式遠端程序呼叫(輕鬆地並行化CPU密集型操作)。

 

如何用4個月學會Hadoop開發並找到年薪25萬工作?

 

 

免費分享一套18年最新Hadoop大資料教程和100道Hadoop大資料必會面試題。

大資料學習群119599574

教程已協助300+人成功轉型Hadoop開發,90%起薪超過20K,工資比之前翻了一倍。

由百度Hadoop核心架構師(T7層級)親自錄製。

內容包括0基礎入門、Hadoop生態系統、真實商業項目實戰3大部分。其中商業案例可以讓你接觸真實的生產環境,訓練自己的開發能力。

弄清Spark、Storm、MapReduce的這幾點區別才能學好大資料

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.