《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 大數據處理平臺比較與分析
大數據處理平臺比較與分析
2015年微型機與應用第11期
何海林1,2,皮建勇1,2
1.貴州大學 計算機科學與信息學院,貴州 貴陽 550025; 2.貴州大學 云計算與物聯網研究中心,貴州 貴陽 550025
摘要: 雖然以MapReduce和Hadoop分布式系統(HDFS)為核心的Hadoop已在大規模數據密集的商業領域成功應用,但是對于多個并行操作之間重用工作數據集卻表現不佳。作為對其的一種補充,本文介紹了Spark。首先介紹Hadoop的MapReduce與HDFS基本概念與設計思想,然后介紹了Spark的基本概念與思想,并且著重介紹了彈性分布式數據集RDD,并通過實驗證明和分析對比了Hadoop與Spark。
Abstract:
Key words :

何海林1,2,皮建勇1,2

1.貴州大學 計算機科學與信息學院,貴州 貴陽 550025; 2.貴州大學 云計算與物聯網研究中心,貴州 貴陽 550025

  摘  要: 雖然以MapReduceHadoop分布式系統(HDFS)為核心的Hadoop已在大規模數據密集的商業領域成功應用,但是對于多個并行操作之間重用工作數據集卻表現不佳。作為對其的一種補充,本文介紹了Spark。首先介紹Hadoop的MapReduce與HDFS基本概念與設計思想,然后介紹了Spark的基本概念與思想,并且著重介紹了彈性分布式數據集RDD,并通過實驗證明和分析對比了Hadoop與Spark。

  關鍵詞: Hadoop;MapReduce;HDFS;Spark;彈性分布式數據集

0 引言

  在這個知識爆炸性增長的社會,隨著各種技術的進步,人們越來越依賴身邊的各種終端設備進行各種各樣的生產生活,而這些設備會產生大量的數據。如何從這些數據中高效地獲得有用信息成為一個有經濟價值的問題。Hadoop[1]憑借其良好的出身與優越的性能,如高可靠性、高可擴展性、高效性,并且它是開源的,已經成為大數據分析的標準框架。但是Hadoop并不適用于所有場合,它有其本身不可克服的缺點,如訪問時間延遲過長不適用于時間要求較高的應用,代碼越來越長限制了它更大規模的應用。這時候Spark[2]異軍突起,克服了Hadoop的眾多缺點。

1 Hadoop

  Hadoop是Apach的一個開源項目,Hadoop提供了一個分布式文件系統(HDFS)[3]和一個用于分析和轉化大規模數據集的MapReduce[4]框架,Hadoop的一個重要特點就是通過對數據進行分割在多臺主機上進行運行,并且并行地執行應用計算。其中HDFS用于存儲數據,MapReduce是Google公司的一項重要技術,后被模仿,它主要采用并行計算的方法用于對大數據的計算。它們之間的關系如圖1。以Hadoop分布式文件系統和MapReduce分布式計算框架為核心,為用戶提供了底層細節透明的分布式基礎設施。HDFS的高容錯性和高彈性的優點,允許用戶將其部署到廉價的機器上,構建分布式系統。MapReduce分布式計算框架允許用戶在不了解分布式系統底層細節的情況下開發并行分布的應用程序,充分利用大規模的計算資源,解決傳統單機無法解決的大數據處理問題。

001.jpg

  1.1 MapReduce編程模型

  正與其名字一樣,MapReduce包含兩項關鍵操作:Map與Reduce,兩者來源于函數式編程語言,并且作為MapReduce的兩項核心操作由用戶編程完成。如圖2,MapReduce模型包含Map、Shuffle和Reduce三個階段。

  Map階段:輸入數據被系統分為相互獨立的片塊,這些小塊同時被Map處理,在用戶指定的Map程序中執行,最大限度地利用并行處理產生結果,最后Map階段的輸出作為Reduce階段的輸入。

002.jpg

  Shuffle階段:將具有相同鍵的記錄送到同一個Reduce。

  Reduce階段:將Shuffle的輸出作為輸入進行處理產生最終結果。

  在MapReduce中的處理主要靠鍵值對實現。例如輸入的記錄用<Key1,Value1>表示,在Map階段讀入記錄處理產生結果,Map階段的輸出用模式<Key2,Value2>表示,如果幾個記錄需要在Reduce階段一起處理,那么這些記錄就會被同一個Reduce處理,在Shuffle階段,將具有相同鍵的送到同一個Reduce,這樣,在Reduce階段Map階段的輸出被最終輸出為<Key3,Value3>??梢杂孟旅娴氖阶颖硎荆?/p>

  Map:(K1,V1)->list(K2,V2)

  Reduce:(K2,list(V2))->list(K3,V3)

  1.2 HDFS

  HDFS當初被發展主要是為了實現與GFS[5]相似的功能,HDFS是Hadoop的文件系統的組件,它的接口與UNIX文件系統相似,犧牲了標準,是為了提高應用的性能。

  HDFS正如GFS一樣將系統數據與應用數據分開進行存放。存放元數據在專門的服務器上,叫做NameNode,應用數據存放在其他服務器上叫做DataNode,所有的服務器通過TCP協議來進行連接。不同于Lustre[6]與PVFS[7],數據節點在HDFS不采用數據保護機制,例如磁盤陣列RAID來確保數據的持久性,而是采用與GFS類似的方式將數據目錄復制到多個數據節點來保證其可靠性,并能保證數據的持久性,這種策略恰好又讓數據傳輸的帶寬提高了多倍,可以讓數據存放在離局部計算更近的地方,幾個分布式文件系統或多或少地實現了命名空間。

2 Spark

  Spark誕生于美國加州理工大學AMPLab集群計算平臺,利用內存計算速度快的特點,并從MapReduce不適用于在多個并行操作之間重用工作數據集(多迭代批量處理與交互式數據分析)的特點出發,在流處理和圖計算等多種計算范式具有更加強的能力。由此提出了一種新的架構叫做Spark,用于處理迭代機器學習算法,以保持像MapReduce一樣的高擴展性與容錯能力。Spark引入了RDD,即彈性分布式數據集(resilient distributed datasets,RDD)[8]。

  Spark是通過Scala[9]實現的一種基于Java虛擬機的高級編程語言,提供類似于DryadLINQ的編程接口,這樣編寫并行任務變得非常方便。同時Spark還可以修改Scala的編譯器,與Ruby和Python一樣,Scala也提供了一個交互式shell。實現時間延遲減少的方法主要是基于內存的數據,通過允許用戶從解釋器交互式地運行Spark,從而可以在大數據集上實現大規模并行數據挖掘。雖然現階段Spark還是一個原型,但是前途還是令人鼓舞的。實驗表明,在處理迭代式應用上Spark比Hadoop的速度提高20多倍,計算數據分析類報表的性能提高了40多倍,在交互式查詢39 GB數據集時可以達到次秒級響應時間。

  Spark應用稱為driver,實現單個節點或多個節點上的操作。與Hadoop一樣,Spark支持單節點和多節點集群,可以在Hadoop文件系統中并行運行。通過名為Mesos[10]的第三方集群框架可以支持此行為。這種配置的優點是:允許Spark與Hadoop共用一個節點共享池,擴大了應用范圍。

003.jpg

  要想使用Spark,開發者需要編寫一個Driver程序,連接到集群以運行worker,如圖3所示。Driver定義了一個或多個RDD,并調用RDD上的動作。worker是長時間運行的進程,將RDD分區以Java對象的形式緩存在內存中。

  RDD是一種分布式的內存抽象。Spark引入的RDD采用了Scala編程風格,因為Scala特性決定了RDD是一個Scala表示的對象,RDD不需要存在于物理存儲中。RDD的一個句柄包含足夠的信息計算RDD,這就意味著RDD可以以四種方式重建[11]:

  (1)改變已有RDD的持久性,RDD是懶散和短暫的,數據集在進行并行操作時已經按照要求進行了實例化(如請求將已有RDD緩存在內存中,之后會被拋出內存)。

 ?。?)從其他RDD轉換得來,一個數據集元素類型為A可以通過調用flatmap轉換為數據類型B。

 ?。?)將Driver中Scala的集合劃分為并行切片,分布在各個節點之間。

 ?。?)一個從文件系統創建的Scala對象。

  RDD的以上操作決定了它有數據流的特點,比如:位置感知調度、強大的自動容錯,以及很好的可伸縮性。這樣在有多個查詢請求時Spark會將工作集緩存在內存中,如果內存不夠用,可以寫到硬盤上,后續查詢時提高了重用度,可以讓查詢速度有質的提升。

3 實驗

  3.1 實現設置

  本次實驗采用4 000家餐廳140萬條點評數據,先預處理,再通過運行K-means算法[12]將數據分為四類,對比在兩種平臺上的迭代時間。K-means算法是聚類算法中最簡單的一種,它需要不斷地迭代直到收斂。

  設備:3臺內存為2 GB、硬盤為500 GB的PC安裝搭建Hadoop后再安裝Spark,其中K-means的Scala的主要代碼為:

  val sparkConf=new SparkConf().setAppName("SparkKMeans")

  val sc=new SparkContext(sparkConf)

  val lines=sc.textFile(args(0))

  迭代時間花費如圖4所示。

004.jpg

  3.2 結果分析與兩者對比

  在搭建實驗環境與編寫實驗程序階段可以看出,Spark提供了與Scala、Java、Python編程一樣的高級API,這樣便于開發并發處理應用程序。Hadoop每一次迭代會在工作集上反復調用一個函數,每一次迭代都可以看做是Mapduce的任務,每一次任務的執行,都需要從硬盤重新下載數據,這會顯著地增加時間延遲,而Spark卻不用從硬盤調用,只需從內存調用。

  兩者對比,Spark相較于Hadoop最顯著的特征就是快,Spark對于小數據集能夠達到亞秒級的延遲,這相對于Hadoop MapReduce由于“心跳機制”要花費數秒的性能而言無疑是飛躍,Hadoop經常被用于在大數據上通過Sql接口(如Pig和Hive)運行Ad-hoc探索性查詢,實際上用戶可以將數據集裝載到內存進行查詢,然而,Hadoop通過MapReduce任務進行,由于反復從硬盤讀取數據,因此它的延遲非常大。其次,首先安裝的是Hadoop,最后安裝的是Spark,后者借助前者的基礎,與其實現了完美融合,憑借Scala(被業界譽為未來Java的取代者)的強大功能,Scala能運行在運行JVM的任何地方,還可以充分利用大量現存的Java庫和現有的Java代碼。因此,Spark只需要稍作修改,就可以交互式編程。通過對比代碼數量可以發現,由于Scala的簡潔性以及Spark非常好地利用了Hadoop和Mesos的基礎設施,Spark代碼量明顯少了許多。

4 結束語

  本文介紹了Hadoop與Spark的基本概念與設計思想??梢钥闯鯯park實際上作為對Hadoop的一種補充,在處理迭代工作與交互式數據分析方面具有優越性。兩者開始顯現出一種融合的趨勢,從Hadoop 0.23把MapReduce做成庫開始,Hadoop的目標就是要支持包括MapReduce在內的更多的并行計算模型,比如MPI、Spark等。未來隨著技術的發展究竟誰會被取代很難預料,應當取長補短,優勢互補。新的需求會產生新的平臺,如為了強調實時性而發展的Storm[13],常用于實時性要求較高的地方。未來如何實現更多融合,是一個值得發展的方向。

參考文獻

  [1] WHITE T. Hadoop: the definitive guide: the definitive guide[Z]. O′Reilly Media, Inc., 2009.

  [2] INCUBATOR A. Spark: Lightning-fast cluster computing[Z]. 2013.

  [3] SHVACHKO K, KUANG H, RADIA S, et al. The hadoop distributed file system[C].Mass Storage Systems and Technologies(MSST), 2010 IEEE 26th Symposium on. IEEE, 2010:1-10.

  [4] DEAN J, GHEMAWAT S. MapReduce: simplified data processing on large clusters[J]. Communications of the ACM, 2008,51(1):107-113.

  [5] GHEMAWAT S, GOBIOFF H, LEUNG S T. The Google file system[C]. ACM SIGOPS operating systems review, ACM, 2003,37(5):29-43.

  [6] BRAAM P J. The Lustre storage architecture[Z]. 2004.

  [7] ROSS R B, THAKUR R. PVFS: A parallel file system for Linux clusters[C]. Proceedings of the 4th annual Linux showcase and conference, 2000:391-430.

  [8] ZAHARIA M, CHOWDHURY M, DAS T, et al. Resilient distributed datasets: a fault-tolerant abstraction for in-memory cluster computing[C]. Proceedings of the 9th USENIX Conference on Networked Systems Design and Implementation. USENIX Association, 2012:2-2.

  [9] ODERSKY M, SPOON L, VENNERS B. Programming in scala[M]. Artima Inc, 2008.

  [10] HINDMAN B, KONWINSKI A, ZAHARIA M, et al. Mesos: a platform for Fine-Grained resource sharing in the data center[C]. NSDI, 2011: 22-22.

  [11] ZAHARIA M, CHOWDHURY M, FRANKLIN M J, et al. Spark: cluster computing with working sets[C]. Proceedings of the 2nd USENIX conference on hot topics in cloud computing, 2010:10.

  [12] WAGSTAFF K, CARDIE C, ROGERS S, et al. Constrained k-means clustering with background knowledge[C]. ICML, 2001:577-584.

  [13] MARZ N. Storm: distributed and fault-tolerant realtime computation[Z]. 2013.


此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          亚洲人成网站精品片在线观看| 午夜精品久久久久99热蜜桃导演| 美女日韩欧美| 免费91麻豆精品国产自产在线观看| 好男人免费精品视频| 亚洲欧洲精品一区二区三区不卡| 国产精品永久| 激情一区二区| 国产精品日韩在线播放| 免费观看在线综合色| 欧美视频中文在线看| 国产精品美女久久| 欧美11—12娇小xxxx| 国产精品盗摄久久久| 欧美成人精品三级在线观看| 欧美日韩国产综合视频在线观看中文| 国产精品亚洲精品| 国产欧美日韩一区二区三区在线观看| 午夜精品在线视频| 在线视频欧美精品| 欧美日韩性生活视频| 久久精品91| 欧美日韩亚洲一区二区| 国产精品v日韩精品| 欧美 日韩 国产一区二区在线视频| 黄色成人在线观看| 国产亚洲美州欧州综合国| 欧美精品99| 亚洲国产91色在线| 欧美黄色一区二区| 欧美大片免费观看| 亚洲狼人综合| 欧美一级视频一区二区| 国产九九视频一区二区三区| 欧美精品成人91久久久久久久| 欧美日韩精品免费观看视频完整| 一区二区高清在线观看| 一区二区三区 在线观看视| 国产一区二区三区无遮挡| 欧美日本韩国一区二区三区| 亚洲欧洲av一区二区三区久久| 欧美国产日本高清在线| 99视频精品| 国产精品一区二区久久精品| 欧美视频国产精品| 久久乐国产精品| 欧美区二区三区| 欧美日韩一区二区高清| 欧美体内she精视频在线观看| 国产精品久久久久久久第一福利| 在线亚洲欧美视频| 欧美视频二区36p| 亚洲级视频在线观看免费1级| 欧美a级在线| 久久一区免费| 国产欧美1区2区3区| 亚洲人成在线观看网站高清| 亚洲人体大胆视频| 欧美11—12娇小xxxx| 在线免费观看日韩欧美| 欧美午夜片在线观看| 亚洲一区二区三区午夜| 国产一区二区三区丝袜| 99成人在线| 久久中文字幕一区| 国产精品女主播在线观看| 亚洲一区二区三区777| 西西裸体人体做爰大胆久久久| 在线一区二区三区做爰视频网站| 欧美黄色片免费观看| 国产在线拍偷自揄拍精品| 永久免费毛片在线播放不卡| 欧美与黑人午夜性猛交久久久| 欧美日韩精品一区| 亚洲日本黄色| 亚洲欧美日韩国产一区二区| 亚洲黄色在线看| 亚洲一级免费视频| 蜜臀av国产精品久久久久| 国产日韩在线播放| 欧美日韩中文字幕精品| 牛人盗摄一区二区三区视频| 91久久国产精品91久久性色| 国产日韩欧美自拍| 在线成人激情黄色| 国产精品国产三级国产专播品爱网| 在线欧美电影| 欧美日本亚洲韩国国产| 欧美日韩视频免费播放| 中文久久精品| 国产精品初高中精品久久| 久久免费99精品久久久久久| 在线观看91久久久久久| 牛牛精品成人免费视频| 久久在线免费观看| 国产欧美一二三区| 欧美日韩免费一区二区三区| 亚洲精品在线看| 国产欧美亚洲精品| 亚洲第一精品福利| 中文有码久久| 欧美美女福利视频| 国产精品素人视频| 性欧美激情精品| 国产香蕉97碰碰久久人人| 在线视频日韩| 永久555www成人免费| 欧美福利影院| 一区二区三区视频免费在线观看| 欧美高清成人| 国产精品天天摸av网| 国内精品一区二区| 欧美日韩日本网| 久久久精品国产99久久精品芒果| 欧美视频手机在线| 国产精品久久久久久久免费软件| 欧美激情性爽国产精品17p| 伊人影院久久| 欧美四级在线| 欧美日韩国产探花| 午夜精品福利一区二区蜜股av| 女女同性女同一区二区三区91| 久久婷婷av| 极品裸体白嫩激情啪啪国产精品| 亚洲欧美激情视频在线观看一区二区三区| 国内精品久久久久伊人av| 欧美福利视频在线观看| 亚洲一区二区动漫| 欧美一级成年大片在线观看| 欧美一区二区三区四区高清| 久久精品国产清高在天天线| 久久久99久久精品女同性| 亚洲女同精品视频| 欧美激情亚洲自拍| 欧美日韩免费网站| 国产精品日韩欧美一区二区| av不卡在线观看| 欧美一区在线视频| 国产精品手机视频| 亚洲精品在线免费观看视频| 欧美好骚综合网| av不卡在线| 亚洲欧洲日韩综合二区| 国产亚洲一区二区三区在线观看| 亚洲日本欧美天堂| 欧美在线一二三四区| 亚洲电影天堂av| 久久亚洲电影| 久久手机免费观看| 午夜精品福利一区二区三区av| 欧美激情综合| 激情懂色av一区av二区av| 亚洲精品色婷婷福利天堂| 亚洲免费在线视频一区 二区| 激情久久久久久久久久久久久久久久| 亚洲视频一区在线观看| 久久久精品一区二区三区| 久久久999成人| 欧美精品aa| 欧美日韩精品一二三区| 亚洲一区二区黄| 久久资源在线| 午夜国产精品视频| 小辣椒精品导航| 欧美日韩三级一区二区| 欧美日韩精品免费观看视频完整| 久久九九国产| 久久资源在线| 国产一区激情| av成人毛片| 国产精品综合视频| 亚洲欧美在线磁力| 久久精品毛片| 尹人成人综合网| 一色屋精品视频免费看| 亚洲夜间福利| 亚洲国产另类 国产精品国产免费| 亚洲天堂偷拍| 亚洲欧美福利一区二区| 永久免费视频成人| 久久精品国产亚洲aⅴ| 日韩视频―中文字幕| 欧美成人dvd在线视频| 国产亚洲一区二区三区在线观看| 中日韩男男gay无套| 国产欧美日韩综合一区在线播放| 在线观看91精品国产入口| 国产精品久久国产精麻豆99网站| 久久aⅴ乱码一区二区三区| 亚洲美女视频在线免费观看| 日韩五码在线| 亚洲欧美日韩精品一区二区| 国产精品色一区二区三区| 欧美一区二区三区四区在线观看地址| 亚洲无亚洲人成网站77777| 国产精品久久婷婷六月丁香| 国产欧美精品一区二区三区介绍| 国产精品免费久久久久久| 国产综合网站| 亚洲一区二三| 午夜视频一区在线观看| 一区二区三区欧美日韩| 久久精品久久综合| 欧美日韩在线免费| 1000精品久久久久久久久| 欧美精品1区2区3区| 欧美国产日韩一二三区| 亚洲欧美日韩精品久久久久| 国产精品一区二区三区四区五区| 亚洲黄色免费网站| 亚洲电影下载| 欧美性大战久久久久| 亚洲字幕一区二区| 亚洲国产女人aaa毛片在线| 久久久国产亚洲精品| 蜜桃av一区二区| 国产欧美一区二区精品忘忧草| 欧美成人一区二区| 国产精品午夜在线观看| 欧美日韩午夜在线视频| 国产伦精品一区二区三区视频黑人| 国产日韩一区二区三区在线播放| 亚洲电影免费观看高清完整版在线观看| 欧美亚洲网站| 亚洲国产精品va在看黑人| 午夜精品美女自拍福到在线| 亚洲一二三区在线观看| 国产精品电影观看| 在线国产日韩| 亚洲欧洲三级| 欧美一区二区三区播放老司机| 一区电影在线观看| 在线观看日韩| 欧美三区在线| 亚洲三级视频在线观看| 欧美午夜视频在线| 欧美一乱一性一交一视频| 国产精品超碰97尤物18| 欧美欧美午夜aⅴ在线观看| 在线观看欧美日韩| 国产午夜精品久久久久久久| 99re8这里有精品热视频免费| 国产精品实拍| 欧美午夜电影网| 欧美一区1区三区3区公司| 欧美激情综合五月色丁香| 韩国成人福利片在线播放| 美女诱惑黄网站一区| 亚洲欧美激情诱惑| 久久综合九色99| 欧美日韩一区二区欧美激情| 欧美激情亚洲激情| 美女在线一区二区| 亚洲日本中文字幕免费在线不卡| 亚洲一区二区高清| 久久精品日韩| 一本久道久久综合狠狠爱| 一本色道精品久久一区二区三区| 欧美大胆人体视频| 红杏aⅴ成人免费视频| 欧美激情亚洲视频| 美国十次成人| 国产欧美精品一区二区三区介绍| 免费成人高清在线视频| 99国产精品99久久久久久粉嫩| 国产精品亚洲а∨天堂免在线| 久久精品理论片| 日韩亚洲综合在线| 亚洲视频一区二区免费在线观看| 欧美黄污视频| 久久久成人精品| 亚洲一区国产精品| 久久久久久久97| 欧美日韩成人一区二区三区| 欧美激情自拍| 国产伦精品一区二区三| 欧美色网一区二区| 亚洲女同同性videoxma| 欧美刺激午夜性久久久久久久| 国产一二三精品| 欧美国产三区| 亚洲精品极品| 欧美—级高清免费播放| 亚洲一区在线观看视频| 亚洲国产天堂久久国产91| 久久久中精品2020中文| 欧美在线视频在线播放完整版免费观看| 国产欧美一区二区三区沐欲| 欧美国产日本韩| 欧美怡红院视频| 在线国产日韩| 欧美国产日韩一区二区在线观看| 欧美亚洲免费高清在线观看| 欧美精品成人91久久久久久久| 欧美三级在线播放| 1024国产精品| 欧美日本不卡| 中文精品视频一区二区在线观看| 欧美在线视频播放| 亚洲欧美日韩系列| 欧美日韩第一区日日骚| 18成人免费观看视频| 国产视频欧美视频| 欧美激情国产日韩| 欧美在线影院在线视频| 亚洲欧美卡通另类91av| 国产精品国产三级国产aⅴ入口| 欧美剧在线观看| 日韩一级裸体免费视频| 欧美午夜www高清视频| 久久精品二区亚洲w码| 欧美精品免费在线观看| 1024国产精品| 久久一区中文字幕| 欧美伦理91i| 亚洲区国产区| 国产日韩一区欧美| 国产精品欧美久久久久无广告| 一本色道久久综合狠狠躁篇的优点| 国产精品久久久久久久一区探花| 亚洲一区图片| 欧美在线观看视频| 一本色道88久久加勒比精品| 国产欧美精品| 亚洲免费在线播放| 国产精品免费小视频| 欧美性猛交xxxx免费看久久久| 久久久噜噜噜|