回覆列表
  • 1 # 愛可生雲資料庫

    Spark已經取代Hadoop成為最活躍的開源大資料專案,但是,在選擇大資料框架時,企業不能因此就厚此薄彼

    近日,著名大資料專家Bernard Marr在一篇文章中分析了Spark和 Hadoop 的異同

    Hadoop和Spark均是大資料框架,都提供了一些執行常見大資料任務的工具,但確切地說,它們所執行的任務並不相同,彼此也並不排斥

    雖然在特定的情況下,Spark據稱要比Hadoop快100倍,但它本身沒有一個分散式儲存系統

    而分散式儲存是如今許多大資料專案的基礎,它可以將 PB 級的資料集儲存在幾乎無限數量的普通計算機的硬碟上,並提供了良好的可擴充套件性,只需要隨著資料集的增大增加硬碟

    因此,Spark需要一個第三方的分散式儲存,也正是因為這個原因,許多大資料專案都將Spark安裝在Hadoop之上,這樣,Spark的高階分析應用程式就可以使用儲存在HDFS中的資料了

    與Hadoop相比,Spark真正的優勢在於速度,Spark的大部分操作都是在記憶體中,而Hadoop的MapReduce系統會在每次操作之後將所有資料寫回到物理儲存介質上,這是為了確保在出現問題時能夠完全恢復,但Spark的彈性分散式資料儲存也能實現這一點

    另外,在高階資料處理(如實時流處理、機器學習)方面,Spark的功能要勝過Hadoop

    實時處理意味著可以在資料捕獲的瞬間將其提交給分析型應用程式,並立即獲得反饋

    在各種各樣的大資料應用程式中,這種處理的用途越來越多,比如,零售商使用的推薦引擎、製造業中的工業機械效能監控

    Spark平臺的速度和流資料處理能力也非常適合機器學習演算法,這類演算法可以自我學習和改進,直到找到問題的理想解決方案

    這種技術是最先進製造系統(如預測零件何時損壞)和無人駕駛汽車的核心

    Spark有自己的機器學習庫MLib,而Hadoop系統則需要藉助第三方機器學習庫,如Apache Mahout

    實際上,雖然Spark和Hadoop存在一些功能上的重疊,但它們都不是商業產品,並不存在真正的競爭關係,而透過為這類免費系統提供技術支援贏利的公司往往同時提供兩種服務

    例如,Cloudera 就既提供 Spark 服務也提供 Hadoop服務,並會根據客戶的需要提供最合適的建議

    Bernard認為,雖然Spark發展迅速,但它尚處於起步階段,安全和技術支援基礎設施方還不發達,在他看來,Spark在開源社群活躍度的上升,表明企業使用者正在尋找已儲存資料的創新用法

  • 2 # 初沏的茶

    spark是記憶體計算框架,而mr是離線計算框架。因此,與mr相比,spark計算速度更快,尤其是迭代運算。spark進行計算時,會將中間結果快取在記憶體裡,當需要再次使用時,不需要從磁碟讀取資料。而mr需要將中間結果寫入磁碟,再次使用時需要從磁碟重新讀取。磁碟i/o通常十分耗時。

    除了離線計算速度更快以外,spark比mr適用場景更多,spark的streaming模組可以實現實時或近線流式計算。

    此外,sparksql可以讓你方便的使用sql來分析資料。

  • 中秋節和大豐收的關聯?
  • 你的未來會對你今天的不努力買單嗎?