精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

spark和hadoop的區(qū)別

PoisonApple ? 來(lái)源:網(wǎng)絡(luò)整理 ? 2018-02-12 14:41 ? 次閱讀

SPARK

Apache Spark 是專為大規(guī)模數(shù)據(jù)處理而設(shè)計(jì)的快速通用的計(jì)算引擎。Spark是UC Berkeley AMP lab (加州大學(xué)伯克利分校的AMP實(shí)驗(yàn)室)所開源的類Hadoop MapReduce的通用并行框架,Spark,擁有Hadoop MapReduce所具有的優(yōu)點(diǎn);但不同于MapReduce的是——Job中間輸出結(jié)果可以保存在內(nèi)存中,從而不再需要讀寫HDFS,因此Spark能更好地適用于數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)等需要迭代的MapReduce的算法。

Spark 是一種與 Hadoop 相似的開源集群計(jì)算環(huán)境,但是兩者之間還存在一些不同之處,這些有用的不同之處使 Spark 在某些工作負(fù)載方面表現(xiàn)得更加優(yōu)越,換句話說,Spark 啟用了內(nèi)存分布數(shù)據(jù)集,除了能夠提供交互式查詢外,它還可以優(yōu)化迭代工作負(fù)載。

Spark 是在 Scala 語(yǔ)言中實(shí)現(xiàn)的,它將 Scala 用作其應(yīng)用程序框架。與 Hadoop 不同,Spark 和 Scala 能夠緊密集成,其中的 Scala 可以像操作本地集合對(duì)象一樣輕松地操作分布式數(shù)據(jù)集。

盡管創(chuàng)建 Spark 是為了支持分布式數(shù)據(jù)集上的迭代作業(yè),但是實(shí)際上它是對(duì) Hadoop 的補(bǔ)充,可以在 Hadoop 文件系統(tǒng)中并行運(yùn)行。通過名為 Mesos 的第三方集群框架可以支持此行為。Spark 由加州大學(xué)伯克利分校 AMP 實(shí)驗(yàn)室 (Algorithms, Machines, and People Lab) 開發(fā),可用來(lái)構(gòu)建大型的、低延遲的數(shù)據(jù)分析應(yīng)用程序。

Hadoop

Hadoop是一個(gè)由Apache基金會(huì)所開發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu)。

用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序。充分利用集群的威力進(jìn)行高速運(yùn)算和存儲(chǔ)。

Hadoop實(shí)現(xiàn)了一個(gè)分布式文件系統(tǒng)(Hadoop Distributed File System),簡(jiǎn)稱HDFS。HDFS有高容錯(cuò)性的特點(diǎn),并且設(shè)計(jì)用來(lái)部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)來(lái)訪問應(yīng)用程序的數(shù)據(jù),適合那些有著超大數(shù)據(jù)集(large data set)的應(yīng)用程序。HDFS放寬了(relax)POSIX的要求,可以以流的形式訪問(streaming access)文件系統(tǒng)中的數(shù)據(jù)。

Hadoop的框架最核心的設(shè)計(jì)就是:HDFS和MapReduce。HDFS為海量的數(shù)據(jù)提供了存儲(chǔ),則MapReduce為海量的數(shù)據(jù)提供了計(jì)算。

spark和hadoop的區(qū)別

spark和hadoop的區(qū)別

解決問題的層面不一樣

首先,Hadoop和Apache Spark兩者都是大數(shù)據(jù)框架,但是各自存在的目的不盡相同。Hadoop實(shí)質(zhì)上更多是一個(gè)分布式數(shù)據(jù)基礎(chǔ)設(shè)施: 它將巨大的數(shù)據(jù)集分派到一個(gè)由普通計(jì)算機(jī)組成的集群中的多個(gè)節(jié)點(diǎn)進(jìn)行存儲(chǔ),意味著您不需要購(gòu)買和維護(hù)昂貴的服務(wù)器硬件。

同時(shí),Hadoop還會(huì)索引和跟蹤這些數(shù)據(jù),讓大數(shù)據(jù)處理和分析效率達(dá)到前所未有的高度。Spark,則是那么一個(gè)專門用來(lái)對(duì)那些分布式存儲(chǔ)的大數(shù)據(jù)進(jìn)行處理的工具,它并不會(huì)進(jìn)行分布式數(shù)據(jù)的存儲(chǔ)。

兩者可合可分

Hadoop除了提供為大家所共識(shí)的HDFS分布式數(shù)據(jù)存儲(chǔ)功能之外,還提供了叫做MapReduce的數(shù)據(jù)處理功能。所以這里我們完全可以拋開Spark,使用Hadoop自身的MapReduce來(lái)完成數(shù)據(jù)的處理。

相反,Spark也不是非要依附在Hadoop身上才能生存。但如上所述,畢竟它沒有提供文件管理系統(tǒng),所以,它必須和其他的分布式文件系統(tǒng)進(jìn)行集成才能運(yùn)作。這里我們可以選擇Hadoop的HDFS,也可以選擇其他的基于云的數(shù)據(jù)系統(tǒng)平臺(tái)。但Spark默認(rèn)來(lái)說還是被用在Hadoop上面的,畢竟,大家都認(rèn)為它們的結(jié)合是最好的。

以下是從網(wǎng)上摘錄的對(duì)MapReduce的最簡(jiǎn)潔明了的解析:

我們要數(shù)圖書館中的所有書。你數(shù)1號(hào)書架,我數(shù)2號(hào)書架。這就是“Map”。我們?nèi)嗽蕉?,?shù)書就更快。

現(xiàn)在我們到一起,把所有人的統(tǒng)計(jì)數(shù)加在一起。這就是“Reduce”。

spark和hadoop的區(qū)別

Spark數(shù)據(jù)處理速度秒殺MapReduce

Spark因?yàn)槠涮幚頂?shù)據(jù)的方式不一樣,會(huì)比MapReduce快上很多。MapReduce是分步對(duì)數(shù)據(jù)進(jìn)行處理的: ”從集群中讀取數(shù)據(jù),進(jìn)行一次處理,將結(jié)果寫到集群,從集群中讀取更新后的數(shù)據(jù),進(jìn)行下一次的處理,將結(jié)果寫到集群,等等…“ Booz Allen Hamilton的數(shù)據(jù)科學(xué)家Kirk Borne如此解析。

反觀Spark,它會(huì)在內(nèi)存中以接近“實(shí)時(shí)”的時(shí)間完成所有的數(shù)據(jù)分析:“從集群中讀取數(shù)據(jù),完成所有必須的分析處理,將結(jié)果寫回集群,完成,” Born說道。Spark的批處理速度比MapReduce快近10倍,內(nèi)存中的數(shù)據(jù)分析速度則快近100倍。

如果需要處理的數(shù)據(jù)和結(jié)果需求大部分情況下是靜態(tài)的,且你也有耐心等待批處理的完成的話,MapReduce的處理方式也是完全可以接受的。

但如果你需要對(duì)流數(shù)據(jù)進(jìn)行分析,比如那些來(lái)自于工廠的傳感器收集回來(lái)的數(shù)據(jù),又或者說你的應(yīng)用是需要多重?cái)?shù)據(jù)處理的,那么你也許更應(yīng)該使用Spark進(jìn)行處理。

大部分機(jī)器學(xué)習(xí)算法都是需要多重?cái)?shù)據(jù)處理的。此外,通常會(huì)用到Spark的應(yīng)用場(chǎng)景有以下方面:實(shí)時(shí)的市場(chǎng)活動(dòng),在線產(chǎn)品推薦網(wǎng)絡(luò)安全分析,機(jī)器日記監(jiān)控等。

災(zāi)難恢復(fù)

兩者的災(zāi)難恢復(fù)方式迥異,但是都很不錯(cuò)。因?yàn)镠adoop將每次處理后的數(shù)據(jù)都寫入到磁盤上,所以其天生就能很有彈性的對(duì)系統(tǒng)錯(cuò)誤進(jìn)行處理。

Spark的數(shù)據(jù)對(duì)象存儲(chǔ)在分布于數(shù)據(jù)集群中的叫做彈性分布式數(shù)據(jù)集(RDD: Resilient Distributed Dataset)中。“這些數(shù)據(jù)對(duì)象既可以放在內(nèi)存,也可以放在磁盤,所以RDD同樣也可以提供完成的災(zāi)難恢復(fù)功能,”Borne指出。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)分析
    +關(guān)注

    關(guān)注

    2

    文章

    1429

    瀏覽量

    34025
  • Hadoop
    +關(guān)注

    關(guān)注

    1

    文章

    90

    瀏覽量

    15959
  • SPARK
    +關(guān)注

    關(guān)注

    1

    文章

    105

    瀏覽量

    19878
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    大數(shù)據(jù)分析中Spark,Hadoop,Hive框架該用哪種開源分布式系統(tǒng)

    眾所周知,大數(shù)據(jù)開發(fā)和分析、機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘中,都離不開各種開源分布式系統(tǒng)。最常見的就是 Hadoop、Hive、Spark這三個(gè)框架了。最近不少朋友有問到關(guān)于這些的問題: 大廠里還有在用
    的頭像 發(fā)表于 09-17 13:17 ?4415次閱讀

    如何將Hadoop部署在低廉的硬件上

    了 YARN,Yarn 是資源調(diào)度框架,能夠細(xì)粒度的管理和調(diào)度任務(wù),還能夠支持其他的計(jì)算框架,比如 spark)為核心的 Hadoop 為用戶提供了系統(tǒng)底層細(xì)節(jié)透明的分布式基礎(chǔ)架構(gòu)。
    的頭像 發(fā)表于 09-27 09:40 ?1481次閱讀

    山西嵌入式系統(tǒng)課程| SparkHadoop計(jì)算模型之SparkHadoop更...

    上次我們分享了SparkHadoop計(jì)算模型的內(nèi)存問題,今天山西思軟嵌入式學(xué)員為大家分享SparkHadoop計(jì)算模型的Spark
    發(fā)表于 11-17 16:44

    Hadoop的整體框架組成

    Hadoop是一個(gè)用Java編寫的Apache開源框架,允許使用簡(jiǎn)單的編程模型跨計(jì)算機(jī)集群分布式處理大型數(shù)據(jù)集。Hadoop框架工作的應(yīng)用程序在跨計(jì)算機(jī)集群提供分布式存儲(chǔ)和計(jì)算的環(huán)境中工作
    發(fā)表于 05-11 16:00

    Spark入門及安裝與配置

    1.下載spark-2.1.0-bin-hadoop2.7.tgz以下是Spark的官方下載地址:https://www.apache.org/dyn/closer.lua/spark
    發(fā)表于 07-31 16:22

    hadoop發(fā)行版本之間的區(qū)別

    hadoop發(fā)行版本之間的區(qū)別Hadoop是一個(gè)能夠?qū)Υ罅繑?shù)據(jù)進(jìn)行分布式處理的軟件框架。 Hadoop 以一種可靠、高效、可伸縮的方式進(jìn)行數(shù)據(jù)處理。
    發(fā)表于 09-18 16:30

    hadoop框架結(jié)構(gòu)的說明介紹

    如下:(1)數(shù)據(jù)源與SQL引擎:DK.Hadoop、spark、hive、sqoop、flume、kafka(2)數(shù)據(jù)采集:DK.hadoop(3)數(shù)據(jù)處理模塊:DK.Hadoop、
    發(fā)表于 10-15 15:59

    hadoopspark區(qū)別

    什么大的區(qū)別。我記得剛開始接觸大數(shù)據(jù)這方面內(nèi)容的時(shí)候,也就這個(gè)問題查閱了一些資料,在《FreeRCH大數(shù)據(jù)一體化開發(fā)框架》的這篇說明文檔中有就Hadoopspark區(qū)別進(jìn)行了簡(jiǎn)單的
    發(fā)表于 11-30 15:51

    大數(shù)據(jù)hadoop入門之hadoop家族產(chǎn)品詳解

    Spark和Strom數(shù)據(jù)存在內(nèi)存中 Pig/Hive(Hadoop編程):角色描述Pig是一種高級(jí)編程語(yǔ)言,在處理半結(jié)構(gòu)化數(shù)據(jù)上擁有非常高的性能,可以幫助我們縮短開發(fā)周期。Hive是數(shù)據(jù)分析查詢工具,尤其在
    發(fā)表于 12-26 15:02

    采用VMware和CentOS及HadoopSpark安裝和配置

    5 基于 Mac 平臺(tái) VMware 虛擬機(jī)的 Spark 安裝 (5)
    發(fā)表于 03-08 16:35

    SparkHadoop的對(duì)比

    Spark系列】:Spark為什么比Hadoop
    發(fā)表于 04-06 09:11

    如何使用Apache Spark 2.0

    數(shù)據(jù)集(Resilient Distributed Dataset,RDD)一直是Spark中的主要抽象。RDD API是在Scala集合框架之后建模的,因此間接提供了Hadoop Map / Reduce熟悉的編程
    發(fā)表于 09-28 19:00 ?0次下載
    如何使用Apache <b class='flag-5'>Spark</b> 2.0

    什么是Hadoop? SparkHadoop對(duì)比

    Hadoop在2006年開始成為雅虎項(xiàng)目,隨后成為頂級(jí)的Apache開源項(xiàng)目。它是一種通用的分布式處理形式,具有多個(gè)組件: HDFS(分布式文件系統(tǒng)),它將文件以Hadoop本機(jī)格式存儲(chǔ),并在集群中并行化; YARN,協(xié)調(diào)應(yīng)用程序運(yùn)行時(shí)的調(diào)度程序.
    發(fā)表于 06-04 12:48 ?6815次閱讀

    快速學(xué)習(xí)SparkHadoop的架構(gòu)的方法

    SparkHadoop的架構(gòu)區(qū)別是什么,什么是spark,什么是Hadoop,怎么樣學(xué)習(xí)這些知識(shí)點(diǎn)?總的來(lái)說,
    的頭像 發(fā)表于 07-18 09:42 ?2052次閱讀

    未來(lái)大數(shù)據(jù)時(shí)代,Hadoop會(huì)被Spark取代?

    毫無(wú)疑問,為專家設(shè)計(jì)的產(chǎn)品一般都會(huì)停留在原來(lái)的軌道上,在其他方面不會(huì)有所涉及。但Spark在各個(gè)行業(yè)都存在一些有意義的分布,這可能要?dú)w功于各種市場(chǎng)上的大數(shù)據(jù)的泛濫。所以,雖然Spark可能有更廣泛的應(yīng)用,但Hadoop仍然支配著
    的頭像 發(fā)表于 03-20 14:12 ?2489次閱讀
    未來(lái)大數(shù)據(jù)時(shí)代,<b class='flag-5'>Hadoop</b>會(huì)被<b class='flag-5'>Spark</b>取代?