中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

Hadoop與Spark哪個更好

發布時間:2021-12-10 11:46:08 來源:億速云 閱讀:168 作者:iii 欄目:大數據

本篇內容介紹了“Hadoop與Spark哪個更好”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

 Hadoop框架的主要模塊包括如下:

  • Hadoop Common

  • Hadoop分布式文件系統(HDFS)

  • Hadoop YARN

  • Hadoop MapReduce


雖然上述四個模塊構成了Hadoop的核心,不過還有其他幾個模塊。這些模塊包括:Ambari、Avro、Cassandra、Hive、 Pig、Oozie、Flume和Sqoop,它們進一步增強和擴展了Hadoop的功能。

Spark確實速度很快(最多比Hadoop MapReduce快100倍)。Spark還可以執行批量處理,然而它真正擅長的是處理流工作負載、交互式查詢和機器學習。

相比MapReduce基于磁盤的批量處理引擎,Spark賴以成名之處是其數據實時處理功能。Spark與Hadoop及其模塊兼容。實際上,在Hadoop的項目頁面上,Spark就被列為是一個模塊。

Spark有自己的頁面,因為雖然它可以通過YARN(另一種資源協調者)在Hadoop集群中運行,但是它也有一種獨立模式。它可以作為 Hadoop模塊來運行,也可以作為獨立解決方案來運行。

MapReduce和Spark的主要區別在于,MapReduce使用持久存儲,而Spark使用彈性分布式數據集(RDDS)。

性能
Spark之所以如此快速,原因在于它在內存中處理一切數據。沒錯,它還可以使用磁盤來處理未全部裝入到內存中的數據。
Spark的內存處理為來自多個來源的數據提供了近乎實時分析的功能:營銷活動、機器學習、物聯網傳感器、日志監控、安全分析和社交媒體網站。另 外,MapReduce使用批量處理,其實從來就不是為驚人的速度設計的。它的初衷是不斷收集來自網站的信息,不需要這些數據具有實時性或近乎實時性。

易用性
支持Scala(原生語言)、Java、Python和Spark SQL。Spark SQL非常類似于SQL 92,所以幾乎不需要經歷一番學習,馬上可以上手。
Spark還有一種交互模式,那樣開發人員和用戶都可以獲得查詢和其他操作的即時反饋。MapReduce沒有交互模式,不過有了Hive和Pig等附加模塊,采用者使用MapReduce來得容易一點。

成本
“Spark已證明在數據多達PB的情況下也輕松自如。它被用于在數量只有十分之一的機器上,對100TB數據進行排序的速度比Hadoop MapReduce快3倍。”這一成績讓Spark成為2014年Daytona GraySort基準。

兼容性
MapReduce和Spark相互兼容;MapReduce通過JDBC和ODC兼容諸多數據源、文件格式和商業智能工具,Spark具有與MapReduce同樣的兼容性。

數據處理
MapReduce是一種批量處理引擎。MapReduce以順序步驟來操作,先從集群讀取數據,然后對數據執行操作,將結果寫回到集群,從集群讀 取更新后的數據,執行下一個數據操作,將那些結果寫回到結果,依次類推。Spark執行類似的操作,不過是在內存中一步執行。它從集群讀取數據后,對數據 執行操作,然后寫回到集群。

Spark還包括自己的圖形計算庫GraphX。GraphX讓用戶可以查看與圖形和集合同樣的數據。用戶還可以使用彈性分布式數據集(RDD),改變和聯合圖形,容錯部分作了討論。

容錯
至于容錯,MapReduce和Spark從兩個不同的方向來解決問題。MapReduce使用TaskTracker節點,它為 JobTracker節點提供了心跳(heartbeat)。如果沒有心跳,那么JobTracker節點重新調度所有將執行的操作和正在進行的操作,交 給另一個TaskTracker節點。這種方法在提供容錯性方面很有效,可是會大大延長某些操作(即便只有一個故障)的完成時間。

Spark使用彈性分布式數據集(RDD),它們是容錯集合,里面的數據元素可執行并行操作。RDD可以引用外部存儲系統中的數據集,比如共享式文件系統、HDFS、HBase,或者提供Hadoop InputFormat的任何數據源。Spark可以用Hadoop支持的任何存儲源創建RDD,包括本地文件系統,或前面所列的其中一種文件系統。

RDD擁有五個主要屬性:

  • 分區列表

  • 計算每個分片的函數

  • 依賴其他RDD的項目列表

  • 面向鍵值RDD的分區程序(比如說RDD是散列分區),這是可選屬性

  • 計算每個分片的首選位置的列表(比如HDFS文件的數據塊位置),這是可選屬性


RDD可能具有持久性,以便將數據集緩存在內存中。這樣一來,以后的操作大大加快,最多達10倍。Spark的緩存具有容錯性,原因在于如果RDD的任何分區丟失,就會使用原始轉換,自動重新計算。

可擴展性

按照定義,MapReduce和Spark都可以使用HDFS來擴展。那么,Hadoop集群能變得多大呢?

據稱雅虎有一套42000個節點組成的Hadoop集群,可以說擴展無極限。最大的已知Spark集群是8000個節點,不過隨著大數據增多,預計集群規模也會隨之變大,以便繼續滿足吞吐量方面的預期。
安全
Hadoop支持Kerberos身份驗證,這管理起來有麻煩。然而,第三方廠商讓企業組織能夠充分利用活動目錄Kerberos和LDAP用于身份驗證。同樣那些第三方廠商還為傳輸中數據和靜態數據提供數據加密。
Hadoop分布式文件系統支持訪問控制列表(ACL)和傳統的文件權限模式。Hadoop為任務提交中的用戶控制提供了服務級授權(Service Level Authorization),這確保客戶擁有正確的權限。
Spark的安全性弱一點,目前只支持通過共享密鑰(密碼驗證)的身份驗證。Spark在安全方面帶來的好處是,如果你在HDFS上運行Spark,它可以使用HDFS ACL和文件級權限。此外,Spark可以在YARN上運行,因而能夠使用Kerberos身份驗證。

“Hadoop與Spark哪個更好”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

太原市| 武山县| 双辽市| 新乡市| 天津市| 永寿县| 海门市| 全州县| 阳朔县| 诸暨市| 沛县| 申扎县| 永新县| 呼伦贝尔市| 彭阳县| 耒阳市| 永昌县| 驻马店市| 江永县| 镇沅| 嫩江县| 漯河市| 吴旗县| 邮箱| 额济纳旗| 永新县| 拜泉县| 光泽县| 莱西市| 含山县| 乐亭县| 海安县| 镇安县| 荃湾区| 本溪| 沙雅县| 白玉县| 东阿县| 扎赉特旗| 万年县| 广河县|