亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Spark 2.0平臺在大數據處理中的應用研究

        2017-05-31 06:31:57周顯春肖衡
        軟件導刊 2017年5期
        關鍵詞:決策樹內存集群

        周顯春 肖衡

        摘要摘要:Spark分布式框架具有利用數據集內存緩存、啟動任務的低遲延、迭代類運算、實時計算的支持和強大的函數式編程接口等特征。描述Spark 集群環(huán)境的搭建過程,將Spark 應用到預測森林植被中,對基于RDD和基于Data Frame接口的Spark隨機森林算法的性能差異進行比較。實驗結果表明,基于Dataset結構的隨機森林法預測效果好、執(zhí)行時間短,可以廣泛使用。

        關鍵詞關鍵詞:Spark 2.0;隨機森林算法;Dataset;集群環(huán)境

        DOIDOI:10.11907/rjdk.171184

        中圖分類號:TP391

        文獻標識碼:A文章編號文章編號:16727800(2017)005014903

        0引言

        數據爆炸式增長和隱藏在這些數據之后的商業(yè)價值催生了一代又一代的大數據處理技術。2004年Hadoop橫空出世,由Google公司提出的開源的MapReduces的大數據處理框架拉開了其在企業(yè)應用的序幕,它被視為解決高性能處理大數據的有效方案。但是MapReduces框架不僅存在單點故障,而且對實時數據和流式數據訪問能力弱,導致基于MapReduces框架的Hadoop平臺應用推廣受到較大影響。

        Apache Spark是另一種分布式、開源計算框架,目的是簡化基于計算機集群的并行程序的編寫。Spark不僅可以發(fā)揮MapReduces對大數據的處理能力[1],還可以充分利用數據集內存緩存、啟動任務的低遲延、迭代類運算、實時計算的支持和強大的函數式編程接口[2]。Spark是Apache的頂級開源項目,功能不斷完善?,F在最新版本為Spark 2.10,它集成了基于RDD和DataFrame(Dataset)兩種編程接口。為了簡化編程,方便更多人使用,同時進一步提高數據處理速度,Spark 3.0版本會摒棄直接面對用戶的基于RDD編程接口。目前,Spark分布式框架在基于機器學習和迭代處理的大數據分析上有廣泛應用。

        1Spark2.0 基本原理

        Spark繼承了MapReduces的線性擴張性和容錯性,同時對它作了一些重量級擴展,主要包括核心數據結構:RDD(Spark 3.0以后使用Data Frame、Dataset)。

        RDD是Spark的核心數據結構,是一種基于內存彈性分布式數據集[3]。利用RDD可以把一部分數據,包括中間結果緩存在內存中,為后續(xù)計算所重復利用,不需要像其它計算結構需要反復訪問磁盤,節(jié)省了大量時間。與Hadoop MapReduce相比,其實驗的性能要快100倍,訪問磁盤的性能快10倍[4]?;贒ataFrames/Dataset的高層API,利用PipeLine可以方便用戶構建和調試機器學習流水線,完成高效的數據處理。RDD(DataFrames、Dataset)數據結構解決了MapReduces存在的很多問題。

        (1)解決了MapReduces啟動遲緩問題[5]。利用Spark采用的有向無環(huán)圖的任務調度機制,可以對多個Stage的Task進行串聯或并聯Excutor,無需將每個Stage的中間結果保存到HDFS,不需要訪問磁盤,因此可以節(jié)省時間。尤其在計算機集群的環(huán)境下,可以避免運算時過量的網絡和磁盤IO開銷。

        (2)支持迭代計算。迭代計算需要訪問相同的數據集,采用基于內存的RDD/DataFrame/Dataset結構可以避免重新計算和從磁盤加載。

        (3)支持實時計算?;赟park構建Spark Straming 是在Spark基礎上的二次開發(fā),主要是將其實時、流水任務離散化成一系列的DStream的數據窗口[6],最小窗口選擇只需要0.5~2s,滿足大多數的準實時計算場景。

        (4)性能優(yōu)化。Dataset API建立在Spark SQL引擎之上,它可以利用Catalyst來優(yōu)化邏輯計劃和物理查詢計劃。而且采用特殊的Encoder,不僅可以有效序列化JVM object,還可以直接被Spark的許多操作,如Filter、Sort、Hash等使用,從而提高執(zhí)行速度。

        2Spark2.0在預測森林植被中的應用

        目前,Spark支持4種運行模式。本地單機模式、集群模式、基于Mesos、基于YARN、基于EC。本文的Spark分布式集群基于YARN,即Hadoop2。

        2.1Spark分布式集群環(huán)境搭建

        實驗環(huán)境所需的軟硬件設備如下:

        軟件:操作系統(tǒng)采用Ubuntu Server 16.10 版本,Hadoop 2.7 版本,JDK 1.8 版本,虛擬軟件VMware Station Pro 12;硬件:1 臺聯想臺式機,CPU 是主頻3.4GHz的Intel的酷睿i7,超頻4.2 GHz,硬盤容量1T,內存16GB。

        Spark集群環(huán)境的搭建過程如下:

        (1) 安裝3臺虛擬機,OS版本ubuntu server 16.10 版本,并通過Hostname、Interfaces、Hosts文件分別設置主機名(Master、Slave1、Slave2)、IP地址,以及DNS映射關系,執(zhí)行sudo ufw disable、Ping分別關閉防火墻以及檢驗3臺虛擬機互通無阻。

        (2)在每臺虛擬機上安裝JDK、Scala、Hadoop、Spark并配置相關的Java環(huán)境變量。

        (3)在每臺機器上執(zhí)行安裝openssh-server服務,執(zhí)行ssh-keygen生成SSH 密鑰文件,保證相互直接建立不需要密碼的SSH可信通道。

        (4)修改Spark目錄下conf/core-site.xml、mapred -site.xml、 yarn-site.xml、hdfs-site.xml、hdfs-env.sh、masters、slaves文件,確保能夠正常啟動Spark。

        2.2隨機森林算法預測森林植被實現

        在Spark機器學習中,用于分類的算法有很多,其中效果較好的有SVM和隨機森林算法。隨機森林(Random Forest,RF)是由 Leo Breiman 將 Bagging 集成學習理論[7]與隨機子空間方法[8]相結合,于2001年提出的一種機器學習算法[9]。RF利用Bootstrap重抽樣方法從原始樣本中多次隨機抽取不同特征的子集數據組成訓練樣本,構建多棵、合理、獨立的子樹,然后融合多棵決策樹的預測結果。在大數據背景下,RF不僅能夠與Spark和Map Reduce的并行處理特征完美結合,預測效果好,而且基于Dataset 的執(zhí)行時間要比基于RDD的少。

        為了更加深入地了解RF性能,尤其是測試效果,需要在實踐中進行檢驗。本實驗數據采用Kaggle大賽的數據Forestcover-Type-Prediction,記錄了美國科羅拉多州不同地塊森林植被特征:海拔、坡度、與水源的距離、遮陽情況和土壤類型,并給出了地塊的已知森林植被類型,共54特征,有581012個樣本[10]。本實驗主要比較基于RDD和基于Data Frame[Row]/Dataset API接口的Spark隨機森林算法的性能差異。關鍵代碼及參數如下:

        2.3性能分析

        通過對決策樹、隨機森林模型的impurity、maxDepth、maxBins、minInfoGain、numTrees(只有隨機森林才有此參數)、maxMemoryInMB等參數進行調試,對比其性能,找到最優(yōu)參數及模型。下面分別從訓練時間、最佳參數、預測效果的Accuracy 3個方面進行比較。

        2.3.1尋找最佳參數訓練時間比較

        由表1可以發(fā)現,隨機森林算法的訓練時間,無論是基于RDD數據結構還是基于Datase結構,都要比決策樹算法的訓練時間長。實驗過程中的數據也顯示,隨著隨機森林算法的樹深度的加大和樹數量的增加,訓練時間明顯延長。

        2.3.2尋找最佳模型參數

        從表2中可以發(fā)現,與決策樹的最佳參數相比較,隨機森林算法的最佳參數深度相近,桶數數量相差很大,該數據為調試最佳參數有一定的參考意義。

        2.3.3預測效果Accuracy比較

        由表3可知,與決策樹的Accuracy相比,隨機森林算法的Accuracy明顯要高(無論是訓練數據、交叉數據,還是測試數據)。這說明多棵樹的評價效果比單棵樹的預測效果好。

        3結語

        Spark實現了分布式計算框架,它是采用分布式處理大規(guī)模數據的最有效途徑。在搭建好的實驗環(huán)境下,對基于RDD和基于Data Frame[Row]/Dataset API接口的Spark隨機森林算法的性能差異進行了比較,相對而言,基于RDD接口的隨機森林算法的執(zhí)行效率較差。并且將隨機森林算法與決策樹算法比較,更好地體現了隨機森林算法良好的預測效果,但是訓練的時間進一步延長了。如何在集群環(huán)境中針對數據的特性,利用Spark平臺快速找到相應的模型并通過調整模型參數使預測效果達到最佳,將是下一步研究的重點。

        參考文獻參考文獻:

        [1]唐振坤.基于Spark的機器學習平臺設計與實現[D].廈門:廈門大學,2014.

        [2]NICK PENTREATH.Spark機器學習[M].蔡立宇,黃章帥,周濟民,譯.北京:人民郵電出版社,2016:13.

        [3]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.

        [4]XIN R S,ROSEN J,ZAHARIA M,et al.Shark:SQL and rich analytics at scale[C].Proceedings of the 2013 international conference on Management of data,2013:1324.

        [5]劉軍,林文輝,方澄著.Spark大數據處理原理、算法與實例[M].北京:清華大學出版社,2016:2023.

        [6]ZAHARIA M,DAS T,LI H,et al.Discretized streams:an efficient and faulttolerant model for stream processing on large clusters[C].Proceedings of the 4th USENIX conference on Hot Topics in Cloud Computing,2012.

        [7]BREIMAN L.Bagging predictors[J].Machine Learning,1996,24(2):123140.

        [8]HO T.The random subspace method for constructing decision forests[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1998,20(8):832844.

        [9]BREIMAN L.Random forests[J].Machine Learning,2001,45(1):532.

        [10]SANDY RYZA,URIL LASERSON,SEAN OWEN,et al.Spark高級數據分析[M].龔少成,譯.北京:人民郵電出版社,2016.

        責任編輯(責任編輯:孫娟)

        猜你喜歡
        決策樹內存集群
        集群式AUV可控分群控制算法
        一種針對不均衡數據集的SVM決策樹算法
        “春夏秋冬”的內存
        當代陜西(2019年13期)2019-08-20 03:54:22
        決策樹和隨機森林方法在管理決策中的應用
        電子制作(2018年16期)2018-09-26 03:27:06
        一種無人機集群發(fā)射回收裝置的控制系統(tǒng)設計
        電子制作(2018年11期)2018-08-04 03:25:40
        Python與Spark集群在收費數據分析中的應用
        勤快又呆萌的集群機器人
        基于決策樹的出租車乘客出行目的識別
        基于肺癌CT的決策樹模型在肺癌診斷中的應用
        基于內存的地理信息訪問技術
        无码AⅤ最新av无码专区| 亚洲精品白浆高清久久久久久 | 亚洲综合色自拍一区| 538任你爽精品视频国产 | 一区二区免费国产a在亚洲| 一区二区中文字幕在线观看污污| 国产av无码专区亚洲av男同| 欧美人伦禁忌dvd放荡欲情| 欧美成人家庭影院| 亚洲国产天堂久久综合网| 国产极品美女高潮抽搐免费网站| 精品国产一区二区三区久久女人| 亚洲中文字幕日本日韩| 蜜桃视频在线观看网址| 国产精品a免费一区久久电影 | 日产精品久久久久久久| 在线无码免费看黄网站| 日本a级片一区二区三区| 日本真人添下面视频免费| 久久精品国产亚洲av麻豆| 亚洲国产成人AV人片久久网站| 国产一区二区三区色区| 日本第一影院一区二区| 国产97在线 | 日韩| 久久无码av三级| 国产精品毛片99久久久久| 国产亚洲精品一区二区在线观看 | 亚洲欧美日韩在线精品2021| 日本一区二区偷拍视频| 亚洲一区毛片在线观看| 成人欧美一区二区三区1314| 国产精品久久久久尤物| 久久麻豆精亚洲av品国产蜜臀| 久久丝袜熟女av一区二区| 亚洲熟妇自偷自拍另欧美| 性饥渴艳妇性色生活片在线播放| 久久久久无码中文字幕| 女同恋性吃奶舌吻完整版| 国产精品国产三级国产专播| 老妇肥熟凸凹丰满刺激| 日本一区二区三区看片|