• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    面向固態(tài)硬盤的Spark數(shù)據(jù)持久化方法設(shè)計

    2017-06-23 12:47:38陸克中朱金彬李正民隋秀峰
    計算機(jī)研究與發(fā)展 2017年6期
    關(guān)鍵詞:存儲系統(tǒng)硬盤分區(qū)

    陸克中 朱金彬 李正民 隋秀峰

    1(深圳大學(xué)計算機(jī)與軟件學(xué)院 廣東深圳 518060) 2(廣東工業(yè)大學(xué)計算機(jī)學(xué)院 廣州 511400) 3(國家計算機(jī)網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心 北京 100029) 4(計算機(jī)體系結(jié)構(gòu)國家重點(diǎn)實(shí)驗(yàn)室 (中國科學(xué)院計算技術(shù)研究所) 北京 100190)5(中國工程院戰(zhàn)略咨詢中心 北京 100088)

    面向固態(tài)硬盤的Spark數(shù)據(jù)持久化方法設(shè)計

    陸克中1朱金彬2,4李正民3隋秀峰4,5

    1(深圳大學(xué)計算機(jī)與軟件學(xué)院 廣東深圳 518060)2(廣東工業(yè)大學(xué)計算機(jī)學(xué)院 廣州 511400)3(國家計算機(jī)網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心 北京 100029)4(計算機(jī)體系結(jié)構(gòu)國家重點(diǎn)實(shí)驗(yàn)室 (中國科學(xué)院計算技術(shù)研究所) 北京 100190)5(中國工程院戰(zhàn)略咨詢中心 北京 100088)

    (kzlu@szu.edu.cn)

    基于固態(tài)硬盤(solid-state drive, SSD)和硬盤(hard disk drive, HDD)混合存儲的數(shù)據(jù)中心已經(jīng)成為大數(shù)據(jù)計算領(lǐng)域的高性能載體,數(shù)據(jù)中心負(fù)載應(yīng)該可將不同特性的數(shù)據(jù)按需持久化到SSD或HDD,以提升系統(tǒng)整體性能.Spark是目前產(chǎn)業(yè)界廣泛使用的高效大數(shù)據(jù)計算框架,尤其適用于多次迭代計算的應(yīng)用領(lǐng)域,其原因在于Spark可以將中間數(shù)據(jù)持久化在內(nèi)存或硬盤中,且持久化數(shù)據(jù)到硬盤打破了內(nèi)存容量不足對數(shù)據(jù)集規(guī)模的限制.然而,當(dāng)前的Spark實(shí)現(xiàn)并未專門提供顯式的面向SSD的持久化接口,盡管可根據(jù)配置信息將數(shù)據(jù)按比例分布到不同的存儲介質(zhì)中,但是用戶無法根據(jù)數(shù)據(jù)特征按需指定RDD的持久化存儲介質(zhì),針對性和靈活性不足.這不僅成為進(jìn)一步提升Spark性能的瓶頸,而且嚴(yán)重影響了混合存儲系統(tǒng)性能的發(fā)揮.有鑒于此,首次提出面向SSD的數(shù)據(jù)持久化策略.探索了Spark數(shù)據(jù)持久化原理,基于混合存儲系統(tǒng)優(yōu)化了Spark的持久化架構(gòu),最終通過提供特定的持久化API實(shí)現(xiàn)用戶可顯式、靈活指定RDD的持久化介質(zhì).基于SparkBench的實(shí)驗(yàn)結(jié)果表明,經(jīng)本方案優(yōu)化后的Spark與原生版本相比,其性能平均提升14.02%.

    大數(shù)據(jù);混合存儲;固態(tài)硬盤;Spark;持久化

    “大數(shù)據(jù)”描述了信息爆炸時代所產(chǎn)生的海量數(shù)據(jù),它不僅聚焦于數(shù)據(jù)規(guī)模本身,更強(qiáng)調(diào)了數(shù)據(jù)量激增背景下的數(shù)據(jù)分析與應(yīng)用所面臨的巨大挑戰(zhàn)[1].與傳統(tǒng)數(shù)據(jù)相比,大數(shù)據(jù)來源廣、種類豐富且格式多樣,其中囊括了結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)[2].目前,大數(shù)據(jù)已經(jīng)滲透到人類社會的各行各業(yè),已成為起決定性作用的生產(chǎn)要素.挖掘隱藏在大數(shù)據(jù)內(nèi)部的有價值的信息,可以有效推進(jìn)相關(guān)工作的展開,提高領(lǐng)導(dǎo)者的決策和管理水平[3-4].大數(shù)據(jù)技術(shù)是指從各種類型的大數(shù)據(jù)中快速提取高價值信息的能力,其中涉及數(shù)據(jù)的采集、清洗、存儲、管理、信息挖掘和可視化等內(nèi)容.面對海量數(shù)據(jù),如何在有效的時間內(nèi)管理、分析并提取有價值的信息,成為人們亟需解決的問題.然而,無論是規(guī)模、種類還是結(jié)構(gòu),大數(shù)據(jù)對人們駕馭數(shù)據(jù)的能力提出了巨大挑戰(zhàn).

    Spark是目前高效且在產(chǎn)業(yè)界被廣泛使用的大數(shù)據(jù)計算框架,是通用、快速的大規(guī)模數(shù)據(jù)處理引擎[5].1)Spark提供了統(tǒng)一的解決方案,可以用于交互式查詢(Spark SQL)、實(shí)時流處理(Spark Streaming)、機(jī)器學(xué)習(xí)(Spark MLlib)等復(fù)雜任務(wù);2)Spark通過彈性分布式數(shù)據(jù)集(resilient distributed dataset, RDD)劃分階段和任務(wù),通過高效的有向無環(huán)圖(directed acyclic graph, DAG)執(zhí)行引擎優(yōu)化子任務(wù)執(zhí)行順序,并通過基于內(nèi)存的計算大幅提升數(shù)據(jù)處理效率;3)Spark數(shù)據(jù)管理依賴于HDFS,Hive等多種數(shù)據(jù)源,并且集群模式下的Spark實(shí)現(xiàn)了橫向擴(kuò)展,支持大規(guī)模數(shù)據(jù)的處理.RDD是Spark區(qū)別于其他大數(shù)據(jù)計算框架最重要的概念,它是一種具有高度容錯機(jī)制的、只讀的分布式數(shù)據(jù)集.Spark應(yīng)用程序中,每一個RDD會被分成多個分區(qū),且Spark以分區(qū)為單位對RDD進(jìn)行各種操作[6].

    持久化(persist)RDD分區(qū)數(shù)據(jù)到內(nèi)存或硬盤實(shí)現(xiàn)了對計算任務(wù)中間結(jié)果的緩存,以供后續(xù)迭代任務(wù)直接讀取中間結(jié)果,避免了重復(fù)計算,大幅提升了數(shù)據(jù)處理效率[7].另外,持久化數(shù)據(jù)到硬盤,打破了內(nèi)存容量不足對數(shù)據(jù)集規(guī)模的限制,使得Spark處理大數(shù)據(jù)游刃有余.

    固態(tài)硬盤(solid-state drive, SSD)的出現(xiàn)為提升存儲系統(tǒng)性能帶來了新的機(jī)遇,SSD具有低功耗、低延遲、體積小等優(yōu)點(diǎn)[8].與傳統(tǒng)企業(yè)級硬盤(hard disk drive, HDD)通過移動機(jī)械臂來尋址方式不同,SSD完全構(gòu)建于半導(dǎo)體芯片上,因此具有隨機(jī)訪問性能.然而,由于SSD容量成本過高、壽命有限等不足,完全使用SSD替換HDD會大幅提升產(chǎn)業(yè)成本.為了合理利用SSD的高性能和HDD的低廉價格等優(yōu)勢,基于SSD和HDD混合存儲的異構(gòu)數(shù)據(jù)中心得到人們普遍研究和應(yīng)用[9].當(dāng)前的研究主要涉及了SSD與HDD的組織架構(gòu)以及容量比例分配,并針對不同特征的數(shù)據(jù)提出了合理、高效的數(shù)據(jù)存儲策略.目前,Google,Amazon,Facebook,Baidu等國內(nèi)外大型互聯(lián)網(wǎng)公司都已經(jīng)將SSD應(yīng)用到數(shù)據(jù)中心的存儲系統(tǒng)中[10-12],通過結(jié)合數(shù)據(jù)冷熱條件,實(shí)現(xiàn)了數(shù)據(jù)的按需持久化,提升了系統(tǒng)整體性能.

    然而,數(shù)據(jù)中心計算框架Spark所提供的數(shù)據(jù)持久化語義對存儲介質(zhì)不具備感知能力,無法實(shí)現(xiàn)RDD分區(qū)數(shù)據(jù)的按需持久化.具體而言,在Spark迭代計算任務(wù)中,不同RDD的重復(fù)利用率往往不同,顯然,將不同重復(fù)利用率的RDD有選擇地持久化到SSD或HDD,充分利用SSD高速讀寫和HDD大容量的特性,可有效提升Spark性能,而原生Spark提供的單一持久化語義根據(jù)Spark配置信息按照比例地放置RDD分區(qū)的存儲位置,針對性和靈活性不足,無法實(shí)現(xiàn)上述按需持久化目標(biāo).因此,基于混合存儲系統(tǒng),為應(yīng)用的開發(fā)者提供面向不同存儲介質(zhì)的RDD持久化編程接口,實(shí)現(xiàn)用戶根據(jù)程序中數(shù)據(jù)的不同特征有針對性地進(jìn)行數(shù)據(jù)的持久化成為進(jìn)一步提升Spark性能的關(guān)鍵技術(shù)之一.

    本文首次基于混合存儲系統(tǒng)提出面向SSD的數(shù)據(jù)持久化策略.探索了Spark數(shù)據(jù)持久化原理,并基于SSD和HDD的混合存儲系統(tǒng)優(yōu)化了Spark的持久化架構(gòu).設(shè)計DeviceAdapter模塊完成存儲設(shè)備的映射,并提供顯式持久化API實(shí)現(xiàn)RDD的按需持久化.

    1 研究背景

    1.1 存儲異構(gòu)數(shù)據(jù)中心的發(fā)展

    IDC的研究報告指出:“自2005年至2020年,人類社會所產(chǎn)生的數(shù)據(jù)將增長300倍——從130艾字節(jié)增長到40 000艾字節(jié)”[13].數(shù)據(jù)的爆炸式增長從根本上改變了傳統(tǒng)數(shù)據(jù)的規(guī)模、種類和結(jié)構(gòu)等,催生了新一代數(shù)據(jù)中心的數(shù)據(jù)存儲和管理方式的變革.尤其對于大數(shù)據(jù)分析型數(shù)據(jù)中心,其任務(wù)高頻率的讀、寫磁盤操作對數(shù)據(jù)中心存儲系統(tǒng)的性能提出巨大的挑戰(zhàn).SSD的引入,顯著地提升了數(shù)據(jù)中心的性能和能效.SSD可以幫助企業(yè)在一個快速發(fā)展的大數(shù)據(jù)時代中最大限度地提升數(shù)據(jù)的存儲和分析效率.目前,諸多新興技術(shù)可以有效地提升SSD的I/O帶寬和降低訪問延遲.而HDD仍然能為那些對存儲性能要求較低的數(shù)據(jù)提供大量的存儲效率.IDC的研究數(shù)據(jù)顯示,大量的數(shù)據(jù)被數(shù)據(jù)中心收集并捕獲后,并不經(jīng)常被訪問,稱之為冷數(shù)據(jù),約占全球數(shù)據(jù)的90%;而剩余的10%的數(shù)據(jù)被收集并捕獲后,會經(jīng)常性地被訪問,稱之為熱數(shù)據(jù).顯然,將全部的數(shù)據(jù)都存儲在高性能、低延遲的存儲設(shè)備是不合理的,成本是極為昂貴的.因此,將SSD和HDD以合理的方式進(jìn)行組合,通過構(gòu)建混合存儲系統(tǒng)有可能帶來性能的大幅提升,同時保障成本可控.

    目前,基于SSD和HDD混合存儲的異構(gòu)數(shù)據(jù)中心在學(xué)術(shù)界得到廣泛研究,其從組織結(jié)構(gòu)上分為2類:1)SSD作為HDD的緩存[14-16];2)SSD作為HDD的同層持久化存儲[17-18].在SSD作為HDD的緩存組織結(jié)構(gòu)中,SSD負(fù)責(zé)存放HDD少量數(shù)據(jù)的拷貝,所有的數(shù)據(jù)請求優(yōu)先查找SSD,如果請求的數(shù)據(jù)在SSD中就直接由SSD服務(wù),否則從HDD上拷貝相應(yīng)的數(shù)據(jù)到SSD中.這種分層結(jié)構(gòu),通過部署高命中率的數(shù)據(jù)映射機(jī)制,可以有效地提升存儲系統(tǒng)的I/O性能.在另一種結(jié)構(gòu)中,SSD作為HDD的同層持久化存儲,用戶或系統(tǒng)可以根據(jù)數(shù)據(jù)的冷熱條件將不同類別的數(shù)據(jù)按需持久化到SSD或HDD,利用SSD高速讀、寫的特征來提升熱數(shù)據(jù)的訪問效率,同時,利用HDD大容量的特性來提升數(shù)據(jù)的存儲效率,從而提升系統(tǒng)的整體性能.本文基于該結(jié)構(gòu)展開面向固態(tài)硬盤的Spark數(shù)據(jù)持久化方法的研究.在工業(yè)界,基于SSD和HDD混合存儲的異構(gòu)數(shù)據(jù)中心已經(jīng)得到了普遍的應(yīng)用.如Google、Facebook、百度以及阿里云等國內(nèi)外大型互聯(lián)網(wǎng)公司都已經(jīng)將SSD引入數(shù)據(jù)中心,并結(jié)合自身業(yè)務(wù)需求,合理地構(gòu)建了基于SSD和HDD混合存儲的異構(gòu)數(shù)據(jù)中心.如圖1所示,三星公司的研究報告指出,基于SSD和HDD的混合存儲系統(tǒng)可以大幅度地降低數(shù)據(jù)中心能耗至原來的1/7,同時將數(shù)據(jù)中心性能提升2倍[19].

    Fig. 1 Performance evaluation between traditional and heterogeneous data centers[19]圖1 傳統(tǒng)與存儲異構(gòu)數(shù)據(jù)中心性能評估[19]

    1.2 混合存儲系統(tǒng)中的Spark數(shù)據(jù)持久化問題

    Spark的功能涵蓋了大數(shù)據(jù)計算的各個分支領(lǐng)域,如SQL類處理、實(shí)時流數(shù)據(jù)處理、機(jī)器學(xué)習(xí)和圖計算等復(fù)雜計算任務(wù).Spark廣泛的應(yīng)用范圍、簡潔易用的API,使得Spark已經(jīng)成為越來越受歡迎的大數(shù)據(jù)計算平臺之一.Spark最重要的一項功能是持久化RDD分區(qū)數(shù)據(jù)到內(nèi)存或硬盤,被持久化的分區(qū)數(shù)據(jù)可被其他迭代任務(wù)直接讀取,避免了重復(fù)計算.

    在混合存儲系統(tǒng)中,根據(jù)數(shù)據(jù)的冷熱條件將不同類別的數(shù)據(jù)按需持久化到SSD或HDD,可有效提升數(shù)據(jù)的訪問和存儲效率.具體到Spark應(yīng)用中,不同RDD的重復(fù)利用率往往不同,換言之,不同RDD的冷熱度存在明顯差異.因此,在僅考慮存儲層的持久化問題時,如將高熱度的RDD分區(qū)數(shù)據(jù)完全持久化到SSD,將熱度相對較高或基于其他原因的關(guān)鍵RDD分區(qū)數(shù)據(jù)持久化到HDD,充分發(fā)揮混合存儲的特性,可有效加速大數(shù)據(jù)的計算速度.然而,Spark所提供的持久化語義對存儲介質(zhì)不具備感知能力,無法實(shí)現(xiàn)RDD分區(qū)數(shù)據(jù)的按需持久化.

    針對該問題,做3組實(shí)驗(yàn)進(jìn)行驗(yàn)證:將原生Spark2.0部署到僅配置一塊HDD、僅配置一塊SSD以及同時配置一塊HDD和一塊SSD三種服務(wù)器平臺上,同時在Spark配置文件中,每一塊存儲設(shè)備配置一個臨時文件目錄.圖2所示為我們設(shè)計的MicroBench的RDD轉(zhuǎn)換關(guān)系,其中RDD_a,RDD_b和RDD_e的依賴度比較高,所以我們對這3個RDD做persist(DISK_ONLY)持久化.以RDD的分區(qū)為單位,分別統(tǒng)計3種情況下被持久化的數(shù)據(jù)分布情況.

    Fig. 2 Transformation of RDD in MicroBench圖2 MicroBench的RDD轉(zhuǎn)換關(guān)系

    統(tǒng)計實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),RDD_a,RDD_b和RDD_e全部被劃分為28個分區(qū).第1組實(shí)驗(yàn)中,3個RDD的分區(qū)數(shù)據(jù)全部被持久化到HDD;第2組實(shí)驗(yàn)中,3個RDD的分區(qū)數(shù)據(jù)全部被持久化到SSD;第3組實(shí)驗(yàn)中,每個RDD的14個分區(qū)被持久化到SSD,另一半被持久化到HDD.

    統(tǒng)計結(jié)果表明,被持久化的RDD分區(qū)數(shù)據(jù)的分布和各實(shí)驗(yàn)中臨時文件目錄的配置存在一定關(guān)系,即原生Spark僅按照臨時文件目錄個數(shù)比例來確認(rèn)持久化數(shù)據(jù)的存儲位置.而在SSD和HDD混合存儲系統(tǒng)中,由于RDD_e的依賴度較高,希望將RDD_e完全持久化到SSD而RDD_a和RDD_b持久化到HDD,以此提升Spark數(shù)據(jù)處理效率是無法實(shí)現(xiàn)的.因此,原生Spark所提供的持久化語義靈活性較差,程序員無法根據(jù)Spark應(yīng)用數(shù)據(jù)的特征,顯式地依據(jù)RDD的冷熱特性實(shí)現(xiàn)按需持久化.有鑒于此,本文將進(jìn)一步探索面向SSD的數(shù)據(jù)持久化方法.

    原生Spark持久化框架如圖3所示.其中,臨時文件目錄由用戶通過配置文件配置,且可以同時配置多個.臨時文件目錄的選擇決定了數(shù)據(jù)持久化地址,具體一個RDD的某一分區(qū)數(shù)據(jù)持久化地址的選擇是由Utils模塊的nonNegativeHash方法完成,該函數(shù)的設(shè)計原理是保持每一個目錄以相同的概率被選取.如上文所做的第3組實(shí)驗(yàn)中,當(dāng)配置了2個臨時文件目錄時,每個目錄都有50%被使用的概率.

    Fig. 3 Persistence framework of native Spark圖3 原生Spark持久化框架

    結(jié)合圖3所示Spark數(shù)據(jù)持久化框架可知,Spark對SSD的存在無感知能力的根本原因可歸納為3點(diǎn):

    1) Spark配置文件采用單一參數(shù)保存多個臨時文件目錄,將指向SSD和HDD的目錄進(jìn)行混合管理;

    2) nonNegativeHash方法未有效地區(qū)分不同臨時文件目錄所在存儲介質(zhì)數(shù)據(jù)訪問性能的差異,等概率的選擇目錄;

    3) 對不同的存儲介質(zhì),統(tǒng)一使用DISK_ONLY為上層應(yīng)用提供持久化接口,而此接口通過StorageLevel反饋給用戶.

    第2節(jié)將結(jié)合上述原因,提出在混合存儲系統(tǒng)中,面向SSD的顯式數(shù)據(jù)持久化方案,并以編程接口的方式提供用戶根據(jù)數(shù)據(jù)特征按需選擇持久化介質(zhì).

    2 面向SSD的持久化

    基于1.2節(jié)分析,研究Spark如何正確地感知混合存儲系統(tǒng)底層存儲設(shè)備,提供更為靈活的持久化API.首先,將底層存儲設(shè)備的差異暴露給用戶,打破DISK_ONLY的屏蔽作用,并向用戶提供更為精確的持久化API,實(shí)現(xiàn)Spark應(yīng)用程序的按需持久化,具體實(shí)現(xiàn)如下.

    如圖4所示,Spark持久化架構(gòu)的具體優(yōu)化方案如下:

    Fig. 4 Persistence framework of optimized Spark圖4 優(yōu)化版Spark持久化框架

    1) 增加“SSD”和“HDD”臨時文件目錄管理變量,將臨時文件目錄的混合管理方式改為由“SSD”和“HDD”分別管理指向SSD和HDD的臨時文件目錄;

    2) 增加設(shè)備適配器DeviceAdapter模塊,接收用戶設(shè)置的數(shù)據(jù)持久化級別,同時讀取用戶配置的臨時文件目錄,實(shí)現(xiàn)持久化級別參數(shù)到SSD或HDD的精確映射;

    3) 增加SSD_ONLY和HDD_ONLY兩個持久化級別,將混合存儲系統(tǒng)特征暴露給用戶.同時,擴(kuò)展StorageLevel的作用域,如圖3所示,StorageLevel僅作用于BlockManager,為用戶和BlockManager提供數(shù)據(jù)持久化級別.我們將StorageLevel作用域進(jìn)一步延伸至DeviceAdapter模塊.

    其中,DeviceAdapter的算法設(shè)計如下所述.

    輸入:數(shù)據(jù)持久化級別StorageLevel、用戶標(biāo)記的級別storageLevel、臨時文件目錄SSDLocation和HDDLocation;

    輸出:數(shù)據(jù)持久化物理地址address.

    procedure DeviceAdapter

    callBlockManager.getFile;

    Begin

    switch(storageLevel)

    address=SSDLocation;

    address=HDDLocation;

    End

    End procedure.

    3 性能評估

    在Spark2.0版本基礎(chǔ)上,依據(jù)第2節(jié)對Spark框架做的優(yōu)化,對Spark數(shù)據(jù)持久化功能模塊做了對應(yīng)的修改,向用戶提供了新的持久化API(SSD_ONLY和HDD_ONLY),并進(jìn)行了重新編譯和系統(tǒng)地部署.本節(jié)分別基于如圖2所示的MicroBench和開源的SparkBench[20](其中的機(jī)器學(xué)習(xí)和圖計算2類負(fù)載),針對原生Spark2.0和經(jīng)本方案優(yōu)化后的Spark進(jìn)行性能評估實(shí)驗(yàn),并對實(shí)驗(yàn)結(jié)果做充分地分析.

    這里需要對SparkBench進(jìn)行如下修改:將源代碼中的cache()方法全部替換成persist()方法,并且對于機(jī)器學(xué)習(xí)類負(fù)載將初始RDD數(shù)據(jù)集按照隨機(jī)比例進(jìn)行分割,并且依據(jù)此比例將數(shù)據(jù)持久化到不同的存儲介質(zhì)中;而對于圖計算負(fù)載,則是針對頂點(diǎn)和邊訪問特征的不同選擇持久化介質(zhì).介質(zhì)的選擇是通過調(diào)用persist(SSD_ONLY)或persist(DISK_ONLY)接口來實(shí)現(xiàn)的.

    實(shí)驗(yàn)環(huán)境如表1~3所示,其中表1說明了Spark集群的搭建和服務(wù)器配置信息,表2說明了SSD-HDD混合存儲系統(tǒng)的配置信息,表3說明了服務(wù)器上的相關(guān)軟件版本及安裝信息.

    Table 1 Spark Cluster Configuration表1 Spark集群及服務(wù)器配置信息

    Table 2 SSD-HDD Heterogeneous Storage Configuration表2 SSD-HDD混合存儲系統(tǒng)配置

    Table 3 Related Software Information表3 相關(guān)軟件信息

    我們分別進(jìn)行MicroBench和SparkBench實(shí)驗(yàn),驗(yàn)證優(yōu)化后的Spark可以實(shí)現(xiàn)RDD分區(qū)數(shù)據(jù)的SSD或HDD精確持久化,并在此基礎(chǔ)上通過不同的持久化方案可以有效地提升Spark性能.這里做如下說明,面向固態(tài)硬盤的Spark數(shù)據(jù)持久化方法設(shè)計,旨在充分利用混合存儲系統(tǒng)的大容量、高性能的特性,以提升Spark大數(shù)據(jù)計算效率.具體地,我們的目標(biāo)是在最小化SSD的使用量的前提下,最大限度地提升Spark大數(shù)據(jù)計算效率,以此減少SSD的擦除次數(shù),兼顧了實(shí)現(xiàn)綠色數(shù)據(jù)中心的目的.

    3.1 MicroBench性能評估

    本節(jié)通過MicroBench性能評估實(shí)驗(yàn),驗(yàn)證面向固態(tài)硬盤的Spark數(shù)據(jù)持久化方法設(shè)計的正確性和靈活性,即實(shí)現(xiàn)了面向固態(tài)硬盤的Spark數(shù)據(jù)持久化方法.按圖2所示設(shè)計方案,首先驗(yàn)證優(yōu)化后Spark可以做到RDD分區(qū)數(shù)據(jù)按需持久化.對RDD_e調(diào)用persist(SSD_ONLY)做持久化,而對RDD_a和RDD_b則調(diào)用persist(HDD_ONLY)做持久化,統(tǒng)計結(jié)果如表4所示.統(tǒng)計結(jié)果顯示,優(yōu)化后Spark的持久化結(jié)果完全按照程序員所調(diào)用的持久化API對分區(qū)數(shù)據(jù)進(jìn)行存儲,實(shí)現(xiàn)了Spark應(yīng)用程序中間數(shù)據(jù)面向固態(tài)硬盤的持久化,進(jìn)而提升了Spark持久化API的靈活性.

    Table 4 Partitions Distribution of Different Schemes Using Optimized Spark

    下面分別對優(yōu)化后的Spark和原生Spark,變化不同RDD的持久化介質(zhì)進(jìn)行更加深入的實(shí)驗(yàn)分析.

    Fig. 5 Performance evaluation of each RDD圖5 針對每一個RDD的持久化方案比較

    圖5顯示的結(jié)果為:依次分別針對每一個RDD調(diào)用2種不同的持久化方法,圖5所示的MicroBench的執(zhí)行時間,其中persist(DISK_ONLY)和+persist(SSD_ONLY)分別表示原生Spark和提供面向SSD的持久化接口的優(yōu)化Spark.根據(jù)結(jié)果可獲知,在支持混合存儲系統(tǒng)的平臺上,相比于默認(rèn)的按比例持久化方案,顯式調(diào)用面向SSD的接口進(jìn)行持久化可以獲得更好的性能提升,這是因?yàn)樵摻涌诳蓪DD的全部分區(qū)都存儲于SSD中,而不是原來的按比例在介質(zhì)間分配分區(qū).同時,性能提升的幅度也和RDD的訪問特征有著密切的關(guān)系.例如,根據(jù)圖2,RDD_e的依賴本來較多,但是由于它是利用filter操作生成的,使得其規(guī)模不大,因此即使不對其進(jìn)行持久化性能影響也并不大,這就是圖5中持久化RDD_e的性能收益并不顯著的原因.

    圖6是從RDD的串并行關(guān)系和RDD的計算復(fù)雜度、RDD的熱度等多個角度考慮不同持久化方案的比較,探索將哪些RDD按需持久化到SSD或HDD可以最大限度地提升系統(tǒng)性能.綜合圖5和圖6,對RDD_(c,h)調(diào)用本文提供的接口做持久化性能提升得更加明顯,其原因在于這些RDD的計算更加復(fù)雜并且后續(xù)使用頻繁,將其全部分區(qū)都持久化到SSD可獲得更大的性能收益.實(shí)驗(yàn)結(jié)果表明,相對于原生Spark,本文所提持久化方案可以將性能平均提升2.7%,最大提升4.7%.

    Fig. 6 Performance evaluation of schemes based on parallel and dependency圖6 基于并行和依賴關(guān)系的持久化方案比較

    對已經(jīng)持久化到存儲系統(tǒng)層的RDD,再選擇持久化到SSD或HDD,能夠進(jìn)一步獲得的性能提升將與生成該RDD的計算復(fù)雜度以及該RDD后續(xù)被訪問的頻繁程度(熱度)有很大的關(guān)系,不妨將其稱之為依賴系數(shù)(RDD的依賴系數(shù)為該RDD的子RDD個數(shù)).由此,將高依賴系數(shù)的RDD分區(qū)數(shù)據(jù)持久化至SSD,相比于系統(tǒng)默認(rèn)的按分區(qū)比例的持久化方案將獲得更加明顯的性能提升.盡管MicroBench實(shí)驗(yàn)結(jié)果顯示,優(yōu)化后Spark性能提升幅度有限,但這是當(dāng)前使用的數(shù)據(jù)規(guī)模和應(yīng)用復(fù)雜度簡單所導(dǎo)致的,顯然可以構(gòu)造出效果更佳明顯的RDD訪問行為.

    3.2 SparkBench性能評估

    Spark作為目前流行的大數(shù)據(jù)計算框架,其十分擅長多次迭代計算任務(wù)(如機(jī)器學(xué)習(xí)、圖計算等).Spark應(yīng)用程序的迭代次數(shù)與RDD持久化性能提升具有密切聯(lián)系,顯然,對于迭代次數(shù)多的RDD,將其持久化到SSD對Spark性能提升的幫助更大.另外,數(shù)據(jù)規(guī)模是Spark讀、寫硬盤時間消耗的重要影響因素.本節(jié)我們基于SparkBench實(shí)現(xiàn)了若干機(jī)器學(xué)習(xí)和圖計算負(fù)載,從數(shù)據(jù)量和迭代計算角度比較原生Spark和優(yōu)化后Spark的性能.同時強(qiáng)調(diào)面向固態(tài)硬盤的Spark數(shù)據(jù)持久化方法的設(shè)計,旨在通過向Spark用戶提供顯示的面向固態(tài)硬盤的持久化接口,提升Spark數(shù)據(jù)持久化接口的靈活性和針對性,進(jìn)而使得程序員可以根據(jù)Spark應(yīng)用程序的數(shù)據(jù)特征,實(shí)現(xiàn)中間數(shù)據(jù)的按需持久化.結(jié)合SSD,HDD的各自特征與Spark應(yīng)用程序數(shù)據(jù)的冷熱特性,將依賴系數(shù)較高的RDD持久化到SSD,以提升中間數(shù)據(jù)重復(fù)利用的讀取效率,將依賴系數(shù)相對較低的RDD持久化到HDD,以減輕SSD因頻繁讀寫而引起擦除操作的壓力,同時擴(kuò)大了Spark應(yīng)用程序可利用的存儲空間.而具體RDD持久化接口的選擇則依賴于程序員對應(yīng)用程序的個人經(jīng)驗(yàn).如下為SparkBench性能評估實(shí)驗(yàn)結(jié)果的詳細(xì)分析.

    圖7和圖8分別測試KMeans和Linear-Regre-ssion負(fù)載性能,通過改變數(shù)據(jù)規(guī)模評估原生Spark和優(yōu)化后Spark,實(shí)驗(yàn)結(jié)果顯示,系統(tǒng)性能平均提升19.72%,最大提升20.5%.同樣,針對機(jī)器學(xué)習(xí)算法,我們測試程序迭代次數(shù)對Spark性能的影響,圖9和圖10顯示結(jié)果為不同訓(xùn)練規(guī)模下,原生Spark和優(yōu)化后Spark的性能比較,優(yōu)化后Spark性能平均提升10.04%,最大提升13.95%.

    Fig. 7 Performance evaluation of KMeans圖7 Kmeans性能評估

    Fig. 8 Performance evaluation of LinearRegression圖8 LinearRegression性能評估

    Fig. 9 Performance evaluation of DecisionTree圖9 DecisionTree性能評估

    Fig. 10 Performance evaluation of LogististicRegression圖10 LogististicRegression性能評估

    Spark GraphX是一個分布式圖處理框架,它是基于Spark平臺提供對圖計算和圖挖掘簡潔易用的而豐富的接口,極大地方便了對分布式圖處理的需求.圖11和圖12分別通過測試SparkBench的典型圖計算負(fù)載PageRank和ShortestPath進(jìn)行評估優(yōu)化后Spark性能的優(yōu)越性.隨著圖規(guī)模的不斷擴(kuò)大,圖的結(jié)構(gòu)不斷復(fù)雜化,即對Spark性能要求更高,實(shí)驗(yàn)結(jié)果表明,優(yōu)化后Spark性能平均提高11.79%,最大提高12.62%,且隨著圖的結(jié)構(gòu)越復(fù)雜,優(yōu)化后Spark的性能越顯著.

    Fig. 11 Performance evaluation of PageRank圖11 PageRank性能評估

    Fig. 12 Performance evaluation of ShortestPath圖12 ShortestPath性能評估

    MicroBench和SparkBench性能評估結(jié)果說明,我們所提出并實(shí)現(xiàn)的按需持久化方案的性能明顯優(yōu)越于原生Spark,該方案實(shí)現(xiàn)了Spark用戶依據(jù)應(yīng)用程序特征,對RDD進(jìn)行按需持久化,進(jìn)一步提升了Spark大數(shù)據(jù)計算性能.經(jīng)過分析RDD的DAG圖可以給出一些使用新的編程接口的啟發(fā):對于自身計算復(fù)雜度較高并且后續(xù)使用比較頻繁的RDD,有針對性地將其持久化至SSD中,相比于Spark原有的處理方式將獲得更大的性能提升,當(dāng)然這需要用戶對所開發(fā)的應(yīng)用理解得更加深入,特別是不同RDD的訪問行為.

    4 相關(guān)工作

    進(jìn)入“大數(shù)據(jù)”時代,大數(shù)據(jù)種類和數(shù)據(jù)量的激增以及其結(jié)構(gòu)的復(fù)雜化給數(shù)據(jù)分析帶來了巨大的挑戰(zhàn).如何快速、準(zhǔn)確地挖掘隱含在大數(shù)據(jù)內(nèi)部的高價值信息是目前研究的熱門問題,因此,人們研發(fā)出MapReduce,Spark等大數(shù)據(jù)計算框架.目前,國內(nèi)外關(guān)于Spark的研究工作層出不窮,較多國內(nèi)文獻(xiàn)利用Spark的高性能優(yōu)勢設(shè)計了出色的大數(shù)據(jù)分析算法[21].文獻(xiàn)[4]介紹了大數(shù)據(jù)挖掘的若干挑戰(zhàn)性問題,文獻(xiàn)[22]回顧了近年來有關(guān)大數(shù)據(jù)計算框架、存儲及數(shù)據(jù)分析等問題的發(fā)展.目前較為流行的大數(shù)據(jù)計算框架有Hadoop和Spark,其中Spark基于內(nèi)存計算且能夠持久化計算的中間結(jié)果,大幅提升了迭代計算任務(wù)的效率.MapReduce是目前已經(jīng)非常成熟的大數(shù)據(jù)并行計算框架,且得到了較為普遍的應(yīng)用.文獻(xiàn)[23-25]分別研究MapReduce應(yīng)用于快速大規(guī)模數(shù)據(jù)檢索、可擴(kuò)展的云數(shù)據(jù)匿名化方案和基于MapReduce模型實(shí)現(xiàn)了關(guān)鍵字感知的服務(wù)推薦系統(tǒng),有效地提升了互聯(lián)網(wǎng)大數(shù)據(jù)分析工作的效率.另外,文獻(xiàn)[26]提出并設(shè)計了Mammoth模型,該模型通過內(nèi)存調(diào)度算法實(shí)現(xiàn)內(nèi)存的全局管理,并設(shè)計啟發(fā)式算法來優(yōu)化執(zhí)行單元之間的資源分配,提高了MapReduce性能.

    文獻(xiàn)[27-29]中,作者分別從不同的角度出發(fā)研究如何提升Spark性能.其中,文獻(xiàn)[28]提出自適應(yīng)調(diào)整策略,Spark在JVM的基礎(chǔ)上對內(nèi)存做了進(jìn)一步的管理,作者提出動態(tài)地調(diào)整Spark內(nèi)存分配方案,進(jìn)一步提升Spark數(shù)據(jù)處理效率.檢查點(diǎn)是Spark實(shí)現(xiàn)RDD容錯的一個重要概念,通過將某RDD設(shè)置為檢查點(diǎn)為快速恢復(fù)RDD提供了保障.文獻(xiàn)[29]提出了自動檢查點(diǎn)設(shè)置算法,以提升RDD的容錯性能、改進(jìn)Spark迭代計算任務(wù)的效率,從而實(shí)現(xiàn)提升Spark性能的目的.作者在文獻(xiàn)[27]中分析了Spark大數(shù)據(jù)處理過程中Shuffle的產(chǎn)生及其對Spark性能造成的影響,并介紹了基于排序的shuffle可以提升Spark性能并應(yīng)用到Spark1.1.0版本中.伴隨著人工智能產(chǎn)業(yè)的發(fā)展,機(jī)器學(xué)習(xí)成為當(dāng)今學(xué)術(shù)界和產(chǎn)業(yè)界共同的熱門話題,且基于機(jī)器學(xué)習(xí)的大數(shù)據(jù)分析技術(shù)得到快速發(fā)展.由于Spark是基于內(nèi)存的計算框架,且實(shí)現(xiàn)了計算中間結(jié)果的持久化功能,使得其在諸如機(jī)器學(xué)習(xí)、圖計算等多次迭代計算領(lǐng)域表現(xiàn)出色.作者在文獻(xiàn)[30]中介紹了Spark并行分布式機(jī)器學(xué)習(xí)庫,該庫基于數(shù)據(jù)和模型并行策略,實(shí)現(xiàn)對數(shù)據(jù)和模型存儲和相關(guān)操作.文獻(xiàn)[31]使用Spark更高效地利用大數(shù)據(jù)實(shí)現(xiàn)優(yōu)秀的推薦系統(tǒng)引擎.

    目前,關(guān)于Spark性能提升研究集中于Spark內(nèi)存管理,通過調(diào)節(jié)JVM內(nèi)存利用率提升Spark性能.然而,內(nèi)存空間的不足限制了Spark通過內(nèi)存加速超大規(guī)模數(shù)據(jù)的計算,而持久化數(shù)據(jù)到硬盤打破了內(nèi)存容量不足對數(shù)據(jù)集規(guī)模的限制,使得Spark處理大數(shù)據(jù)游刃有余.本文首次基于混合存儲系統(tǒng)提出Spark性能優(yōu)化方案.通過優(yōu)化Spark的持久化框架,實(shí)現(xiàn)Spark數(shù)據(jù)的按需持久化.進(jìn)而,Spark可以根據(jù)程序特征,將高熱度RDD的分區(qū)數(shù)據(jù)持久化到SSD,利用存儲異構(gòu)數(shù)據(jù)中心的特征有效地提升Spark性能.

    5 總 結(jié)

    目前Spark無法精確持久化RDD分區(qū)數(shù)據(jù)到SSD或HDD,無法根據(jù)應(yīng)用程序特征進(jìn)行按需持久化,導(dǎo)致Spark無法充分利用混合存儲系統(tǒng)的彈性、高性能的優(yōu)勢以提升自身性能.針對該問題,本文探索了Spark數(shù)據(jù)持久化原理,進(jìn)而針對混合存儲系統(tǒng)對Spark的持久化框架進(jìn)行優(yōu)化,并向用戶提供了SSD_ONLY和HDD_ONLY持久化API,實(shí)現(xiàn)了Spark的顯示SSD和HDD持久化功能.本文通過分析HDD和SSD讀取性能并結(jié)合RDD讀取特征,理論論證了將RDD分區(qū)數(shù)據(jù)持久化到SSD或HDD以及混合存儲系統(tǒng)的性能差異.然后進(jìn)一步通過基準(zhǔn)性能評估實(shí)驗(yàn)驗(yàn)證了優(yōu)化后Spark對應(yīng)用程序性能提升明顯優(yōu)于原生Spark.未來將進(jìn)一步探索面向異構(gòu)存儲系統(tǒng)的隱式持久化方案,即數(shù)據(jù)持久化介質(zhì)的確定由Spark框架自動完成,對用戶是透明的.

    [1]Labrinidis A, Jagadish H V. Challenges and opportunities with big data[J]. Proceedings of the VLDB Endowment, 2012, 5(12): 2032-2033

    [2]Howe D, Costanzo M, Fey P, et al. Big data: The future of biocuration[J]. Nature, 2008, 455(7209): 47-50

    [3]Kriegel H P, Borgwardt K M, Kr?ger P, et al. Future trends in data mining[J]. Data Mining and Knowledge Discovery, 2007, 15(1): 87-97

    [4]Wu Xindong, Zhu Xingquan, Wu Gongqing, et al. Data mining with big data[J]. IEEE Trans on Knowledge and Data Engineering, 2014, 26(1): 97-107

    [5]Zaharia M, Chowdhury M, Franklin M J, et al. Spark: Cluster computing with working sets[C/OL] //Proc of the 2nd USENIX Conf on Hot Topics in Cloud Computing (HotCloud). Berkeley, CA: USENIX Association, 2012[2017-01-18].http://static.usenix.org/legacy/events/hotcloud10/tech/full_papers/Zaharia.pdf

    [6]Zaharia M, Chowdhury M, Das T, et al. Resilient distributed datasets: A fault-tolerant abstraction for in-memory cluster computing[C] //Proc of the 9th USENIX Conf on Networked Systems Design and Implementation. Berkeley, CA: USENIX Association, 2012: 15-28

    [7]Jiang Zhipeng, Chen Haopeng, Zhou Huan, et al. An elastic data persisting solution with high performance for Spark[C] //Proc of the 2015 Int Conf on Smart City/SocialCom/SustainCom. Piscataway, NJ: IEEE, 2015: 656-661

    [8]Rizvi S S, Chung T S. Flash SSD vs HDD: High performance oriented modern embedded and multimedia storage systems[C] //Proc of the 2nd Int Conf on Computer Engineering and Technology (ICCET). Piscataway, NJ: IEEE, 2010: 297-299

    [9]Narayanan I, Wang Di, Jeon M, et al. SSD failures in datacenters: What, when and why?[C] //Proc of the 9th ACM SIGMETRICS Int Conf. New York: ACM, 2016: 407-408

    [10]Meza J, Wu Qiang, Kumar S, et al. A large-scale study of flash memory failures in the field[C] //Proc of ACM Sigmetrics Performance Evaluation Review. New York: ACM, 2015: 177-190

    [11]Ouyang Jian, Lin Shiding, Hou Zhenyu, et al. Active SSD design for energy-efficiency improvement of Web-scale data analysis[C] //Proc of the 2013 Int Symp on Low Power Electronics and Design. Piscataway, NJ: IEEE, 2013: 286-291

    [12]Schroeder B, Lagisetty R, Merchant A. Flash reliability in production: The expected and the unexpected[C] //Proc of the 14th USENIX Conf on File and Storage Technologies (FAST’16). Berkeley, CA: USENIX Association, 2016: 67-80

    [13]Gantz J, Reinsel D. Extracting value from chaos, IDC IVIEW[R/OL]. Hopkinton, MA: EMC Corporation, 2011[2017-01-18].https://www.emc.com/collateral/analyst-reports/idc-extracting-value-from-chaos-ar.pdf

    [14]Canim M, Mihaila G A, Bhattacharjee B, et al. SSD bufferpool extensions for database systems[J]. Proceedings of the VLDB Endowment, 2010, 3(1/2): 1435-1446

    [15]Kang W H, Lee S W, Moon B. Flash-based extended cache for higher throughput and faster recovery[J]. Proceedings of the VLDB Endowment, 2012, 5(11): 1615-1626

    [16]Ni Yuanjiang, Jiang Ji, Jiang Dejun, et al. S-RAC: SSD friendly caching for data center workloads[C] //Proc of the 9th ACM Int on Systems and Storage Conf. New York: ACM, 2016: 8:1-8:12

    [17]Awasthi A, Nandini A, Bhattacharya A, et al. Hybrid HBase: Leveraging flash SSDs to improve cost per throughput of HBase[C] //Proc of the 18th Int Conf on Management of Data. Mumbai, India: Computer Society of India, 2012: 68-79

    [18]Luo Tian, Lee R, Mesnier M, et al. hStorage-DB: Heterogeneity-aware data management to exploit the full capability of hybrid storage systems[J]. Proceedings of the VLDB Endowment, 2012, 5(10): 1076-1087

    [19]SAMSUNG. SAMSUNG GREEN SSD[R/OL]. Austin, Texas: SAMSUNG SEMICONDUCTOR, INC, 2010 [2017-01-18].http://www.samsung.com/us/business/oem-solutions/pdfs/SSI-green_ssd_v4.pdf

    [20]Li Min, Tan Jian, Wang Yandong, et al. Sparkbench: A comprehensive benchmarking suite for in memory data analytic platform Spark[C] //Proc of the 12th ACM Int Conf on Computing Frontiers. New York: ACM, 2015: No.53

    [21]Zhu Jizhao, Jia Yantao, Xu Jun, et al. SparkCRF: A parallel implementation of CRFs algorithm with Spark[J]. Journal of Computer Research and Development, 2016, 53(8): 1819-1828 (in Chinese)

    (朱繼召, 賈巖濤, 徐君, 等. SparkCRF: 一種基于Spark的并行CRFs算法實(shí)現(xiàn)[J]. 計算機(jī)研究與發(fā)展, 2016, 53(8): 1819-1828)

    [22]Bilal M, Oyedele L O, Qadir J, et al. Big data in the construction industry: A review of present status, opportunities, and future trends[J]. Advanced Engineering Informatics, 2016, 30(3): 500-521

    [23]Doulkeridis C, N?rv?g K. A survey of large-scale analytical query processing in MapReduce[J]. The VLDB Journal, 2014, 23(3): 355-380

    [24]Meng Shunmei, Dou Wanchun, Zhang Xuyun, et al. KASR: A keyword-aware service recommendation method on MapReduce for big data applications[J]. IEEE Trans on Parallel and Distributed Systems, 2014, 25(12): 3221-3231

    [25]Zhang Xuyun, Yang L T, Liu Chang, et al. A scalable two-phase top-down specialization approach for data anonymization using MapReduce on cloud[J]. IEEE Trans on Parallel and Distributed Systems, 2014, 25(2): 363-373

    [26]Shi Xuanhua, Chen Ming, He Ligang, et al. Mammoth: Gearing Hadoop towards memory-intensive MapReduce applications[J]. IEEE Trans on Parallel and Distributed Systems, 2015, 26(8): 2300-2315

    [27]Rana N, Deshmukh S. Performance improvement in Apache Spark through shuffling[J]. International Journal of Science, Engineering and Technology Research, 2015, 4(3): 1636-1638

    [28]Zhao Yao, Hu Fei, Chen Haopeng. An adaptive tuning strategy on Spark based on in-memory computation characteristics[C] //Proc of the 18th IEEE Int Conf on Advanced Communication Technology (ICACT). Piscataway, NJ: IEEE, 2016: 484-488

    [29]Zhu Wei, Chen Haopeng, Hu Fei. ASC: Improving Spark driver performance with automatic Spark checkpoint[C] //Proc of the 18th IEEE Int Conf on Advanced Communication Technology (ICACT). Piscataway, NJ: IEEE, 2016: 607-611

    [30]Meng Xiangrui, Bradley J, Yavuz B, et al. Mllib: Machine learning in Apache Spark[J]. Journal of Machine Learning Research, 2016, 17(1): 1235-1241

    [31]Kulkarni S. A recommendation engine using Apache Spark[D]. San Jose, CA: The Faculty of the Department of Computer Science San Jose State University, 2015

    Lu Kezhong, born in 1982. PhD, professor at Shenzhen University. His main research interests include big data theory, parallel and distributed computing, wireless sensor networks, design and analysis of algorithms and computational geometry.

    Zhu Jinbin, born in 1989. Master candidate. His main research interests include computer system architecture and design and analysis of algorithms.

    Li Zhengmin, born in 1984. PhD candidate. His main research interests include cloud computing, network and network virtualization.

    Sui Xiufeng, born in 1982. PhD, associate professor of the Institute of Computing Technology, Chinese Academy of Sciences. His main research interests include high performance computer archi-tectures, system performance modeling and evaluation, and cloud computing (suixiufeng@ict.ac.cn).

    Design of RDD Persistence Method in Spark for SSDs

    Lu Kezhong1, Zhu Jinbin2,4, Li Zhengmin3, and Sui Xiufeng4,5

    1(CollegeofComputerScience&SoftwareEngineering,ShenzhenUniversity,Shenzhen,Guangdong518060)2(SchoolofComputerScienceandTechnology,GuangdongUniversityofTechnology,Guangzhou511400)3(NationalComputerNetworkEmergencyResponseTechnicalTeamCoordinationCenterofChina,Beijing100029)4(StateKeyLaboratoryofComputerArchitecture(InstituteofComputingTechnology,ChineseAcademyofSciences),Beijing100190)5(StrategicStudiesCentre,ChineseAcademyofEngineering,Beijing100088)

    SSD (solid-state drive) and HDD (hard disk drive) hybrid storage system has been widely used in big data computing datacenters. The workloads should be able to persist data of different characteristics to SSD or HDD on demand to improve the overall performance of the system. Spark is an industry-wide efficient data computing framework, especially for the applications with multiple iterations. The reason is that Spark can persist data in memory or hard disk, and persisting data to the hard disk can break the insufficient memory limits on the size of the data set. However, the current Spark implementation does not specifically provide an explicit SSD-oriented persistence interface, although data can be distributed proportionally to different storage mediums based on configuration information, and the user can not specify RDD’s persistence locations according to the data characteristics, and thus the lack of relevance and flexibility. This has not only become a bottleneck to further enhance the performance of Spark, but also seriously affected the played performance of hybrid storage system. This paper presents the data persistence strategy for SSD for the first time as we know. We explore the data persistence principle in Spark, and optimize the architecture based on hybrid storage system. Finally, users can specify RDD’s storage mediums explicitly and flexibly leveraging the persistence API we provided. Experimental results based on SparkBench shows that the performance can be improved by an average of 14.02%.

    big data; hybrid storage; solid-state drive (SSD); Spark; persistence

    2017-02-27;

    2017-04-14

    國家“八六三”高技術(shù)研究發(fā)展計劃基金項目(2015AA015305);廣東省自然科學(xué)基金項目(2014A030313553);廣東省省部產(chǎn)學(xué)研項目(2013B090500055);深圳市基礎(chǔ)研究學(xué)科布局項目(JCYJ20150529164656096) This work was supported by the National High Research and Development Program of China (863 Program) (2015AA015305), the Guangdong Natural Science Foundation of China (2014A030313553), the Guangdong Science and Technology Foundation (2013B090500055), and the Shenzhen Science and Technology Foundation (JCYJ20150529164656096).

    李正民(lzm@cert.org.cn)

    TP303

    猜你喜歡
    存儲系統(tǒng)硬盤分區(qū)
    上海實(shí)施“分區(qū)封控”
    分布式存儲系統(tǒng)在企業(yè)檔案管理中的應(yīng)用
    哈爾濱軸承(2020年2期)2020-11-06 09:22:36
    HiFi級4K硬盤播放機(jī) 億格瑞A15
    Egreat(億格瑞)A10二代 4K硬盤播放機(jī)
    天河超算存儲系統(tǒng)在美創(chuàng)佳績
    浪莎 分區(qū)而治
    我區(qū)電視臺對硬盤播出系統(tǒng)的應(yīng)用
    華為震撼發(fā)布新一代OceanStor 18000 V3系列高端存儲系統(tǒng)
    基于SAGA聚類分析的無功電壓控制分區(qū)
    電測與儀表(2015年8期)2015-04-09 11:50:16
    一種基于STM32的具有斷電保護(hù)機(jī)制的采集存儲系統(tǒng)設(shè)計
    国产成人系列免费观看| 国产精品免费一区二区三区在线 | 精品午夜福利视频在线观看一区| 欧美日韩国产mv在线观看视频| 悠悠久久av| 亚洲片人在线观看| 成在线人永久免费视频| 久久久久久亚洲精品国产蜜桃av| 91在线观看av| 亚洲美女黄片视频| 中文字幕人妻丝袜制服| 99热网站在线观看| 成人永久免费在线观看视频| 日韩成人在线观看一区二区三区| 国产精品av久久久久免费| 波多野结衣一区麻豆| 欧美精品av麻豆av| 久久国产精品影院| 欧美老熟妇乱子伦牲交| 十八禁人妻一区二区| 成年女人毛片免费观看观看9 | 精品电影一区二区在线| 午夜免费成人在线视频| 老汉色av国产亚洲站长工具| a在线观看视频网站| 免费久久久久久久精品成人欧美视频| 97人妻天天添夜夜摸| 国产在线一区二区三区精| 欧美日本中文国产一区发布| 久久午夜亚洲精品久久| 精品一区二区三区av网在线观看| 一级a爱视频在线免费观看| 亚洲第一av免费看| 久久久久久久精品吃奶| 免费av中文字幕在线| 美女国产高潮福利片在线看| 久久久精品免费免费高清| 中文字幕人妻丝袜制服| av网站在线播放免费| 亚洲欧美一区二区三区久久| 亚洲国产毛片av蜜桃av| 天天操日日干夜夜撸| 久久草成人影院| 黑人操中国人逼视频| 男人舔女人的私密视频| 99国产综合亚洲精品| 热99re8久久精品国产| 日日摸夜夜添夜夜添小说| 女人爽到高潮嗷嗷叫在线视频| 久久人人97超碰香蕉20202| 亚洲熟妇熟女久久| 精品无人区乱码1区二区| xxxhd国产人妻xxx| 午夜免费成人在线视频| 在线看a的网站| 中文字幕色久视频| 老熟妇乱子伦视频在线观看| 久久精品国产清高在天天线| 亚洲色图 男人天堂 中文字幕| 男女高潮啪啪啪动态图| 不卡一级毛片| 国产欧美亚洲国产| 欧美日韩福利视频一区二区| 搡老熟女国产l中国老女人| av线在线观看网站| 午夜亚洲福利在线播放| 欧美中文综合在线视频| 亚洲色图av天堂| 亚洲精品久久成人aⅴ小说| 天天操日日干夜夜撸| 国产精品免费大片| 亚洲欧美激情在线| 大香蕉久久网| 亚洲一区高清亚洲精品| 欧美性长视频在线观看| 精品视频人人做人人爽| 一区二区三区精品91| 制服人妻中文乱码| 少妇粗大呻吟视频| 欧美激情高清一区二区三区| 午夜成年电影在线免费观看| 午夜两性在线视频| 成年人免费黄色播放视频| 午夜精品久久久久久毛片777| 怎么达到女性高潮| 人人妻,人人澡人人爽秒播| 午夜福利免费观看在线| 18禁裸乳无遮挡动漫免费视频| 一本大道久久a久久精品| 搡老岳熟女国产| 亚洲黑人精品在线| 9色porny在线观看| 在线观看66精品国产| 天天躁夜夜躁狠狠躁躁| 在线观看免费视频日本深夜| 国产精品亚洲一级av第二区| 国产亚洲一区二区精品| 久久人人97超碰香蕉20202| 精品亚洲成国产av| 久久国产精品男人的天堂亚洲| 国产欧美日韩一区二区三| 亚洲熟妇中文字幕五十中出 | 99国产综合亚洲精品| 亚洲精华国产精华精| 免费观看a级毛片全部| 国产欧美日韩综合在线一区二区| 亚洲精品国产色婷婷电影| 国产亚洲av高清不卡| 欧美老熟妇乱子伦牲交| 性少妇av在线| 侵犯人妻中文字幕一二三四区| 欧美黄色片欧美黄色片| 精品无人区乱码1区二区| 国产成+人综合+亚洲专区| 天天躁狠狠躁夜夜躁狠狠躁| 电影成人av| 欧美大码av| 精品国产亚洲在线| 黄色视频,在线免费观看| 十分钟在线观看高清视频www| 欧美日韩瑟瑟在线播放| 亚洲av美国av| 首页视频小说图片口味搜索| 欧美成人午夜精品| 中文字幕人妻丝袜一区二区| 国产97色在线日韩免费| 午夜两性在线视频| 亚洲九九香蕉| 欧洲精品卡2卡3卡4卡5卡区| 婷婷成人精品国产| 中文字幕人妻丝袜制服| 久久久久久久久免费视频了| 精品久久久久久,| av超薄肉色丝袜交足视频| 搡老乐熟女国产| 国产精品久久久久久精品古装| 日本黄色日本黄色录像| 久久久久视频综合| 婷婷成人精品国产| 男女免费视频国产| 亚洲色图综合在线观看| 亚洲国产毛片av蜜桃av| 欧美日韩视频精品一区| 午夜免费鲁丝| 久久久精品区二区三区| 欧美老熟妇乱子伦牲交| 岛国在线观看网站| 国产亚洲精品久久久久久毛片 | 大香蕉久久成人网| 少妇的丰满在线观看| 欧美 亚洲 国产 日韩一| 亚洲成人免费av在线播放| videosex国产| 黄色片一级片一级黄色片| 欧美久久黑人一区二区| 动漫黄色视频在线观看| 99re6热这里在线精品视频| 后天国语完整版免费观看| 免费在线观看日本一区| 天堂俺去俺来也www色官网| 亚洲片人在线观看| 电影成人av| 久久久久视频综合| av电影中文网址| 侵犯人妻中文字幕一二三四区| 国产野战对白在线观看| 国产午夜精品久久久久久| 欧美日韩中文字幕国产精品一区二区三区 | 午夜福利一区二区在线看| 国产一区二区激情短视频| 日韩人妻精品一区2区三区| 操美女的视频在线观看| 法律面前人人平等表现在哪些方面| 看片在线看免费视频| 侵犯人妻中文字幕一二三四区| 亚洲国产精品sss在线观看 | 999久久久国产精品视频| 99在线人妻在线中文字幕 | 757午夜福利合集在线观看| 免费不卡黄色视频| 高潮久久久久久久久久久不卡| 午夜免费鲁丝| 婷婷丁香在线五月| 日日夜夜操网爽| 激情视频va一区二区三区| 久久精品熟女亚洲av麻豆精品| 国产有黄有色有爽视频| 18禁黄网站禁片午夜丰满| 久久久久视频综合| 91在线观看av| www.自偷自拍.com| 国产野战对白在线观看| 久久久久久久午夜电影 | 国产av精品麻豆| 高清毛片免费观看视频网站 | 国产成人精品无人区| 精品熟女少妇八av免费久了| 久久久久精品国产欧美久久久| 亚洲欧美一区二区三区久久| 激情视频va一区二区三区| av欧美777| 女人久久www免费人成看片| 亚洲五月天丁香| 免费在线观看黄色视频的| av不卡在线播放| 黄片小视频在线播放| av片东京热男人的天堂| 久久久精品区二区三区| 久久亚洲真实| 国产高清videossex| 欧美精品啪啪一区二区三区| 国产又色又爽无遮挡免费看| 久久精品aⅴ一区二区三区四区| 老汉色∧v一级毛片| 两个人免费观看高清视频| 久久久久久久精品吃奶| e午夜精品久久久久久久| 欧美 亚洲 国产 日韩一| netflix在线观看网站| 日韩免费高清中文字幕av| 亚洲欧美精品综合一区二区三区| www日本在线高清视频| 又黄又粗又硬又大视频| 国产精品久久久久成人av| 亚洲色图av天堂| 嫩草影视91久久| 悠悠久久av| 自线自在国产av| 亚洲成人国产一区在线观看| 亚洲成av片中文字幕在线观看| 在线观看午夜福利视频| 在线免费观看的www视频| 男女床上黄色一级片免费看| 亚洲欧美一区二区三区黑人| 亚洲一区高清亚洲精品| 欧美乱码精品一区二区三区| 国产深夜福利视频在线观看| 国产精品二区激情视频| 欧美色视频一区免费| 久久人人爽av亚洲精品天堂| 精品国产亚洲在线| 成年人免费黄色播放视频| 久久香蕉激情| 真人做人爱边吃奶动态| 十八禁高潮呻吟视频| 日韩欧美免费精品| 一级片'在线观看视频| 老熟妇乱子伦视频在线观看| 亚洲精品久久成人aⅴ小说| 亚洲一区二区三区欧美精品| 成人18禁高潮啪啪吃奶动态图| 丝袜在线中文字幕| 亚洲精品一二三| 成年人黄色毛片网站| 少妇猛男粗大的猛烈进出视频| 一区二区日韩欧美中文字幕| 国产成人欧美在线观看 | 最新的欧美精品一区二区| 好看av亚洲va欧美ⅴa在| 日韩欧美三级三区| 亚洲国产中文字幕在线视频| 午夜影院日韩av| 久久精品亚洲av国产电影网| 欧美日韩精品网址| 性色av乱码一区二区三区2| 一级毛片女人18水好多| 午夜福利一区二区在线看| 国产精品亚洲av一区麻豆| 久久婷婷成人综合色麻豆| 亚洲精华国产精华精| 国产成+人综合+亚洲专区| 国产午夜精品久久久久久| 久久ye,这里只有精品| 欧美精品高潮呻吟av久久| 18禁黄网站禁片午夜丰满| 成人特级黄色片久久久久久久| 男女之事视频高清在线观看| 精品久久久精品久久久| 免费高清在线观看日韩| 亚洲中文日韩欧美视频| 黄色视频不卡| 精品国内亚洲2022精品成人 | 国产单亲对白刺激| 国产亚洲精品第一综合不卡| 精品一区二区三区四区五区乱码| 欧美日韩亚洲高清精品| 91国产中文字幕| 美女国产高潮福利片在线看| 久久99一区二区三区| 看片在线看免费视频| 亚洲男人天堂网一区| 高清av免费在线| 十八禁高潮呻吟视频| 午夜精品久久久久久毛片777| 精品少妇一区二区三区视频日本电影| 最近最新免费中文字幕在线| a级毛片黄视频| 国产有黄有色有爽视频| 一级毛片高清免费大全| 19禁男女啪啪无遮挡网站| 久久国产精品人妻蜜桃| 丰满的人妻完整版| 国产精品欧美亚洲77777| 丁香欧美五月| 亚洲免费av在线视频| 亚洲专区中文字幕在线| 69精品国产乱码久久久| 每晚都被弄得嗷嗷叫到高潮| 欧美乱妇无乱码| 人人妻,人人澡人人爽秒播| 亚洲一区二区三区欧美精品| 久热爱精品视频在线9| 91av网站免费观看| 精品久久久精品久久久| 老汉色av国产亚洲站长工具| 人人妻人人添人人爽欧美一区卜| 亚洲精品美女久久久久99蜜臀| 国产精品一区二区在线不卡| 1024香蕉在线观看| 最新美女视频免费是黄的| 久久久精品免费免费高清| 人妻久久中文字幕网| 精品人妻1区二区| 午夜精品久久久久久毛片777| 国产亚洲一区二区精品| 欧美精品一区二区免费开放| 天堂俺去俺来也www色官网| 亚洲精品自拍成人| 麻豆乱淫一区二区| 在线观看午夜福利视频| 又紧又爽又黄一区二区| 亚洲精品自拍成人| 欧美成人午夜精品| 黄片大片在线免费观看| 变态另类成人亚洲欧美熟女 | 露出奶头的视频| 精品少妇久久久久久888优播| 国产一卡二卡三卡精品| 成人影院久久| 人人妻人人爽人人添夜夜欢视频| 精品第一国产精品| 十八禁网站免费在线| 正在播放国产对白刺激| 亚洲,欧美精品.| 国产精品一区二区在线不卡| 亚洲av美国av| 淫妇啪啪啪对白视频| 另类亚洲欧美激情| xxx96com| 99在线人妻在线中文字幕 | 中文字幕另类日韩欧美亚洲嫩草| 老司机深夜福利视频在线观看| 久久中文字幕一级| 老司机亚洲免费影院| 男女之事视频高清在线观看| 美女国产高潮福利片在线看| 国产精品久久视频播放| 亚洲中文字幕日韩| 欧美日韩视频精品一区| 少妇粗大呻吟视频| 精品国产一区二区久久| 村上凉子中文字幕在线| 亚洲人成伊人成综合网2020| 亚洲成人免费av在线播放| 国产97色在线日韩免费| 国产xxxxx性猛交| 亚洲精品自拍成人| 美国免费a级毛片| 久久精品aⅴ一区二区三区四区| 国产成人一区二区三区免费视频网站| www日本在线高清视频| 亚洲精品一二三| 黄色片一级片一级黄色片| 黄色成人免费大全| 在线视频色国产色| 香蕉国产在线看| 亚洲专区字幕在线| 欧美黑人精品巨大| 久久久精品国产亚洲av高清涩受| 韩国av一区二区三区四区| 黄色毛片三级朝国网站| av中文乱码字幕在线| a在线观看视频网站| 99精品在免费线老司机午夜| 国产野战对白在线观看| 又大又爽又粗| 亚洲午夜理论影院| 亚洲片人在线观看| a在线观看视频网站| 日韩免费高清中文字幕av| 国产精品久久久人人做人人爽| 69精品国产乱码久久久| 岛国在线观看网站| 19禁男女啪啪无遮挡网站| 高清av免费在线| 中文字幕制服av| 免费女性裸体啪啪无遮挡网站| 人人澡人人妻人| 国产男靠女视频免费网站| 人成视频在线观看免费观看| 亚洲色图综合在线观看| 久久久精品免费免费高清| 大片电影免费在线观看免费| 国产在线观看jvid| 日韩一卡2卡3卡4卡2021年| 日韩中文字幕欧美一区二区| 久久久久久久精品吃奶| 国产精品美女特级片免费视频播放器 | 极品教师在线免费播放| 法律面前人人平等表现在哪些方面| 大型黄色视频在线免费观看| a级毛片在线看网站| 亚洲av片天天在线观看| 天堂动漫精品| 免费久久久久久久精品成人欧美视频| av天堂在线播放| 午夜精品久久久久久毛片777| 亚洲精品成人av观看孕妇| 俄罗斯特黄特色一大片| 欧美精品av麻豆av| 91成人精品电影| 午夜精品久久久久久毛片777| 老司机在亚洲福利影院| 亚洲性夜色夜夜综合| 久久青草综合色| 国产精品国产av在线观看| 精品午夜福利视频在线观看一区| 99久久人妻综合| 国产熟女午夜一区二区三区| 97人妻天天添夜夜摸| 日韩欧美免费精品| 亚洲中文日韩欧美视频| 精品人妻熟女毛片av久久网站| 欧美国产精品一级二级三级| 亚洲国产精品sss在线观看 | 亚洲色图 男人天堂 中文字幕| 国产精品98久久久久久宅男小说| 久久国产精品大桥未久av| 我的亚洲天堂| 一区福利在线观看| 性少妇av在线| 自线自在国产av| 69精品国产乱码久久久| 一区二区三区激情视频| 69av精品久久久久久| 91九色精品人成在线观看| 色老头精品视频在线观看| 老司机影院毛片| 日日爽夜夜爽网站| 91精品三级在线观看| 国产aⅴ精品一区二区三区波| 美女午夜性视频免费| 亚洲免费av在线视频| 99久久人妻综合| 女警被强在线播放| 飞空精品影院首页| 香蕉国产在线看| 成人特级黄色片久久久久久久| 色精品久久人妻99蜜桃| 国产区一区二久久| 亚洲精品国产区一区二| 在线观看午夜福利视频| 国产精品1区2区在线观看. | 国内久久婷婷六月综合欲色啪| 国产成人系列免费观看| e午夜精品久久久久久久| 美女视频免费永久观看网站| 一级,二级,三级黄色视频| 久久精品亚洲熟妇少妇任你| 香蕉丝袜av| 久久国产亚洲av麻豆专区| 中文字幕人妻丝袜一区二区| 久久人妻av系列| 18禁国产床啪视频网站| 午夜久久久在线观看| 国产又爽黄色视频| 久久草成人影院| 日韩成人在线观看一区二区三区| 两人在一起打扑克的视频| 亚洲精品在线观看二区| 热99re8久久精品国产| www.自偷自拍.com| 国产熟女午夜一区二区三区| 不卡一级毛片| 国产精华一区二区三区| 国产亚洲精品久久久久久毛片 | 女同久久另类99精品国产91| 精品福利永久在线观看| 免费日韩欧美在线观看| 男女之事视频高清在线观看| 又黄又粗又硬又大视频| 欧美激情高清一区二区三区| 好看av亚洲va欧美ⅴa在| 国内毛片毛片毛片毛片毛片| 美国免费a级毛片| 欧美日韩亚洲综合一区二区三区_| 亚洲中文日韩欧美视频| 91成年电影在线观看| 久久 成人 亚洲| 成人免费观看视频高清| 久久国产亚洲av麻豆专区| 久久久久久久午夜电影 | 水蜜桃什么品种好| 高清黄色对白视频在线免费看| 亚洲国产精品合色在线| 亚洲aⅴ乱码一区二区在线播放 | 一级毛片高清免费大全| 视频区欧美日本亚洲| 国产成人免费无遮挡视频| av有码第一页| 亚洲av片天天在线观看| 91成年电影在线观看| 免费观看人在逋| 日日爽夜夜爽网站| 亚洲精品美女久久久久99蜜臀| 午夜免费鲁丝| 少妇被粗大的猛进出69影院| 欧美精品高潮呻吟av久久| 女警被强在线播放| av天堂在线播放| 十分钟在线观看高清视频www| 精品久久久久久,| 大码成人一级视频| 美女午夜性视频免费| 法律面前人人平等表现在哪些方面| 人妻 亚洲 视频| 男女高潮啪啪啪动态图| 久久中文看片网| 亚洲精品久久午夜乱码| 国产欧美亚洲国产| 久久 成人 亚洲| 亚洲熟妇熟女久久| 高清在线国产一区| 久久狼人影院| 国产精品欧美亚洲77777| 亚洲美女黄片视频| 欧美日韩一级在线毛片| 午夜视频精品福利| 精品一区二区三区四区五区乱码| 村上凉子中文字幕在线| 自拍欧美九色日韩亚洲蝌蚪91| 日本欧美视频一区| 免费av中文字幕在线| 18禁国产床啪视频网站| 亚洲精品久久午夜乱码| 成人亚洲精品一区在线观看| 午夜福利影视在线免费观看| 国产伦人伦偷精品视频| 下体分泌物呈黄色| 又大又爽又粗| 12—13女人毛片做爰片一| 国产麻豆69| 国产精品久久久av美女十八| 成熟少妇高潮喷水视频| av欧美777| 久久人妻av系列| 国产欧美亚洲国产| 咕卡用的链子| 亚洲av日韩在线播放| 久热爱精品视频在线9| 欧美精品一区二区免费开放| 老司机靠b影院| 国产国语露脸激情在线看| 无遮挡黄片免费观看| 婷婷丁香在线五月| 久久精品国产清高在天天线| xxx96com| 精品久久久久久久毛片微露脸| 女性被躁到高潮视频| a级毛片在线看网站| 超碰97精品在线观看| 一夜夜www| 欧美乱妇无乱码| 高清av免费在线| 日本欧美视频一区| 欧美精品av麻豆av| 成年人免费黄色播放视频| 91九色精品人成在线观看| cao死你这个sao货| 天堂俺去俺来也www色官网| 国产精品美女特级片免费视频播放器 | 亚洲一区中文字幕在线| 色精品久久人妻99蜜桃| 国产一区二区三区视频了| 国产欧美日韩一区二区精品| av中文乱码字幕在线| 国产精品免费大片| 国产精品二区激情视频| netflix在线观看网站| 男女下面插进去视频免费观看| 欧美精品亚洲一区二区| 欧美色视频一区免费| 国产男靠女视频免费网站| 国产精品免费大片| www.999成人在线观看| 黑人操中国人逼视频| 免费人成视频x8x8入口观看| 精品一区二区三区视频在线观看免费 | 热99久久久久精品小说推荐| 91老司机精品| 99国产综合亚洲精品| 老熟妇乱子伦视频在线观看| 两性夫妻黄色片| 十八禁高潮呻吟视频| 亚洲avbb在线观看| 99热只有精品国产| 黑人操中国人逼视频| av超薄肉色丝袜交足视频| 一区二区三区激情视频| 日本wwww免费看| av欧美777| av国产精品久久久久影院| 亚洲九九香蕉| 久久香蕉精品热| 18禁黄网站禁片午夜丰满|