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

        ?

        HDFS數(shù)據(jù)動態(tài)分布設(shè)計與實現(xiàn)

        2020-06-15 07:18蔡宇昂張鑫
        綠色科技 2020年6期
        關(guān)鍵詞:存儲介質(zhì)閾值客戶端

        蔡宇昂,張鑫

        (1.湖北警官學(xué)院,湖北 武漢 430034;2.華中科技大學(xué),湖北 武漢 430074)

        1 引言

        為適應(yīng)大數(shù)據(jù)對于存儲系統(tǒng)的要求,人們提出了許多分布式文件系統(tǒng),分布式文件系統(tǒng)HDFS就是其中之一。在分布式系統(tǒng)Hadoop中,由于SSD(Hard Disk Driver,HDD)的不對稱I/O特性和價格因素,使得由SSD和HDD組成混合存儲系統(tǒng)是一種有效的解決方案。HDFS是針對同構(gòu)集群設(shè)計的,對存儲介質(zhì)的類型未加以區(qū)分,在為數(shù)據(jù)塊分配存儲空間和保存數(shù)據(jù)塊的過程中,不考慮存儲介質(zhì)之間的性能差異,導(dǎo)致新型存儲介質(zhì)的優(yōu)勢無法完全的發(fā)揮出來。對HDFS的數(shù)據(jù)分布進(jìn)行優(yōu)化、提高HDFS的數(shù)據(jù)存取速度具有重要意義。

        論文根據(jù)數(shù)據(jù)被讀寫的頻率確定數(shù)據(jù)應(yīng)存放的存儲介質(zhì),解決數(shù)據(jù)在不同讀寫性能的存儲介質(zhì)間的分布與其熱度無關(guān)的問題,期望能為大數(shù)據(jù)在高效存取與處理、多種數(shù)據(jù)及多種應(yīng)用并存且并發(fā)服務(wù)等方面提供一些解決方案。在對數(shù)據(jù)分布策略進(jìn)行優(yōu)化之前將分析各類數(shù)據(jù)的時間和空間訪問特征,將其與多種特性的存儲設(shè)備關(guān)聯(lián),達(dá)到將數(shù)據(jù)存儲在最合適的位置的目的,使之能夠被快速地獲取和存儲。

        基于負(fù)載訪問的數(shù)據(jù)管理策略在發(fā)揮SSD優(yōu)良讀性能的同時借助磁盤來減少對SSD的寫和擦除操作[1,2],系統(tǒng)通常采用靜態(tài)或動態(tài)監(jiān)測的方法對頁面訪問情況進(jìn)行統(tǒng)計,當(dāng)訪問負(fù)載變化較為頻繁時,I/O 統(tǒng)計帶來的累積效應(yīng)將會使該模型在訪問負(fù)載變化時不能快速反應(yīng),文獻(xiàn)[3]對此進(jìn)行了改進(jìn),提出了一種時間敏感的SSD和HDD高效混合存儲模型。但是這兩種方法都是基于內(nèi)存頁的I/O統(tǒng)計信息來決定數(shù)據(jù)分布,一方面當(dāng)數(shù)據(jù)量和內(nèi)存增大時所需的元數(shù)據(jù)迅速增加,不能滿足大數(shù)據(jù)數(shù)據(jù)量大的需求;另一方面在頁級別難以利用各請求之間的相關(guān)性來加速存儲性能,難以很好地支持大數(shù)據(jù)高效處理。MapReduce框架還為另一種異構(gòu)計算平臺做了改進(jìn),比如多核處理器和核加速器,很多文章優(yōu)化了同構(gòu)集群下多租戶MapReduce工作,這些文章無論用哪種方式都是提出調(diào)度程序在面臨多重工作時讓本地任務(wù)的優(yōu)先級高于遠(yuǎn)程任務(wù),但是在異構(gòu)集群中,這些方法都不太適用。有論文提出一種稱為Tarazu的解決方案[4],對異構(gòu)集群下的MapReduce系統(tǒng)進(jìn)行了優(yōu)化,但其所做的優(yōu)化主要是針對任務(wù)調(diào)度方面,并未對異構(gòu)集群下數(shù)據(jù)的存取方式進(jìn)行改進(jìn)。現(xiàn)有國內(nèi)外研究在大規(guī)模分布式存儲、數(shù)據(jù)分布與存儲性能隔離等問題上都提供了充足的解決方案,但是大數(shù)據(jù)環(huán)境下需要合理分布數(shù)據(jù)以獲得更高的訪問效率,數(shù)據(jù)在異構(gòu)的存儲集群上的合理分布問題有待進(jìn)一步研究。

        2 HFDS數(shù)據(jù)分布優(yōu)化方案

        2.1 數(shù)據(jù)分布優(yōu)化的基本原理

        HDFS集群中具體執(zhí)行數(shù)據(jù)存儲邏輯功能的從節(jié)點都會駐留一個數(shù)據(jù)節(jié)點(DataNode)的守護(hù)進(jìn)程,來執(zhí)行分布式文件系統(tǒng)中的數(shù)據(jù)塊操作。DataNode會將HDFS數(shù)據(jù)塊保存在Linux本地文件系統(tǒng)的實際文件中,并將其視為Linux文件系統(tǒng)上的普通文件進(jìn)行管理。在原HDFS中,DataNode在接收到數(shù)據(jù)塊后,會在本地文件系統(tǒng)中隨機(jī)選擇存儲介質(zhì)加以存放,且一經(jīng)確定,數(shù)據(jù)塊的位置將不再發(fā)生改變,數(shù)據(jù)塊所處存儲介質(zhì)的性能優(yōu)劣是隨機(jī)的,不會根據(jù)數(shù)據(jù)的熱度智能的選擇數(shù)據(jù)塊的存放位置。為實現(xiàn)數(shù)據(jù)的更合理分布,新增一項工作:在DataNode初始化時,統(tǒng)計處于自身管理下的存儲介質(zhì)的種類,并確定每種存儲介質(zhì)的讀寫性能值,在DataNode運行的過程中,新增一個調(diào)度線程BlockScheduler,對存儲介質(zhì)進(jìn)行分類管理。

        當(dāng)DataNode收到客戶端創(chuàng)建新文件的請求時,會在寫性能較好的存儲介質(zhì)上為客戶端分配對應(yīng)存儲空間(而不是原來的隨機(jī)分配存儲空間),當(dāng)客戶端頻繁的對DataNode上的某個數(shù)據(jù)塊進(jìn)行讀操作時,BlockScheduler會將該數(shù)據(jù)塊遷移到讀性能更好的存儲介質(zhì)上去,當(dāng)客戶端頻繁的對DataNode上的某個數(shù)據(jù)塊進(jìn)行寫操作時,BlockScheduler會將該數(shù)據(jù)塊遷移到寫性能更好的存儲介質(zhì)上去。當(dāng)某種存儲介質(zhì)的剩余空間不足時,BlockScheduler會對其進(jìn)行閾值調(diào)度,根據(jù)存儲在其上的數(shù)據(jù)塊的讀寫頻率將數(shù)據(jù)塊分散到其他存儲介質(zhì)上,以保持各存儲介質(zhì)的良好狀態(tài)。通過以上的數(shù)據(jù)塊遷移工作,就可以使被頻繁訪問的熱數(shù)據(jù)存放在對應(yīng)性能最好的存儲介質(zhì)上,從而提高DataNode對外提供服務(wù)的效率,縮短系統(tǒng)響應(yīng)時間。

        2.2 數(shù)據(jù)分布優(yōu)化的過程

        調(diào)度線程BlockScheduler以一個固定時間為周期(TIME_GAP)對本DataNode管理下的所有數(shù)據(jù)塊的存儲位置進(jìn)行調(diào)度。每個周期內(nèi),BlockScheduler線程處于休眠狀態(tài)(最大限度降低調(diào)度線程帶來的系統(tǒng)開銷),DataNode在處理客戶端請求后,會額外增加一項計數(shù)工作:客戶端執(zhí)行修改數(shù)據(jù)塊(Append)請求后將涉及到的數(shù)據(jù)塊對應(yīng)的被寫次數(shù)(writeCount)加1;客戶端執(zhí)行讀數(shù)據(jù)塊(Read)請求后會將涉及到的數(shù)據(jù)塊對應(yīng)的被讀次數(shù)(readCount)加1。

        每個周期結(jié)束時,BlockScheduler會統(tǒng)計每個數(shù)據(jù)塊被讀寫的次數(shù),同時考慮數(shù)據(jù)塊所在存儲介質(zhì)的性能參數(shù),對針對每個數(shù)據(jù)塊進(jìn)行以下計算:

        readCount/READ_PARAMETER + writeCount/WRITE_PARAMETER = needMove

        (1)

        readCount - writeCount = moveDest

        (2)

        把它們定義成參數(shù),統(tǒng)計得到所有數(shù)據(jù)塊的needMove的最大值moveStandard,根據(jù)moveStandard和存儲介質(zhì)種類數(shù)COUNT以及每個數(shù)據(jù)塊needMove計算得到每個數(shù)據(jù)塊應(yīng)提升的性能指數(shù)finalNeedMove:

        finalNeedMove = COUNT/2 * needMove/moveStandard

        (3)

        設(shè)定一個判定讀寫性能是否平衡的閾值標(biāo)準(zhǔn)RW_Blance_Threshold,根據(jù)moveDest與RW_Blance_Threshold的差值格式化為[-1,1]:

        * 如果moveDest < -RW_Blance_Threshold,則置moveDest為-1;

        * 如果moveDest > RW_Blance_Threshold,則置moveDest為 1;

        * 如果 |moveDest| < RW_Blance_Threshold則置moveDest為 0。

        依次對各數(shù)據(jù)塊進(jìn)行判斷,如果finalNeedMove大于0,則將此數(shù)據(jù)塊根據(jù)moveDest移動到其他存儲介質(zhì),移動方向為:性能平衡性[moveDest-1,moveDest+1],綜合性能指數(shù)提高needMove,如果對應(yīng)存儲器不可用,則將性能指數(shù)再加1,依次類推,最高提高到性能平衡性[moveDest-1,moveDest+1]中綜合性能的最大值。

        以上的調(diào)度過程持續(xù)不斷的將數(shù)據(jù)從低性能存儲介質(zhì)上遷移數(shù)據(jù)到高性能存儲介質(zhì)之上,當(dāng)熱數(shù)據(jù)被大量的遷移到性能較好的存儲介質(zhì)上后,相應(yīng)的存儲空間可能會被用盡,所以需要對各存儲介質(zhì)設(shè)相應(yīng)的閾值,以保證存儲介質(zhì)剩余空間狀態(tài)良好。當(dāng)存儲器的容量達(dá)到閾值時,依然可以接收數(shù)據(jù)塊。上文提到,每個周期結(jié)束時,會對熱數(shù)據(jù)進(jìn)行調(diào)度,如果調(diào)度的過程中發(fā)現(xiàn)數(shù)據(jù)遷移的目標(biāo)存儲介質(zhì)容量不足,則會對此存儲介質(zhì)進(jìn)行閾值調(diào)度。

        在對某存儲介質(zhì)進(jìn)行閾值調(diào)度時,BlockScheduler會統(tǒng)計得到系統(tǒng)中所有數(shù)據(jù)塊被讀寫次數(shù)的值(同上文提到的readCount、writeCount),并進(jìn)行以下計算:

        readCount + writeCount = needLie

        (4)

        計算出所有數(shù)據(jù)塊的needLie值之后,BlockScheduler會統(tǒng)計needLie的最大值lieStandard,并以此為標(biāo)準(zhǔn),結(jié)合系統(tǒng)中存儲器種類數(shù)(COUNT)計算出此存儲介質(zhì)上的所有數(shù)據(jù)塊應(yīng)處于何種性能參數(shù)的存儲介質(zhì)之上。

        finalNeedLie = COUNT* needLie/lieStandard

        (5)

        最后,BlockScheduler會根據(jù)每個數(shù)據(jù)塊的finalNeedLie值和moveDest(上午提到,在進(jìn)行數(shù)據(jù)塊調(diào)度時,已經(jīng)計算得到了moveDest的值)將其轉(zhuǎn)移到綜合性能為對應(yīng)值的存儲介質(zhì)上。統(tǒng)計平衡性[moveDest-1,moveDest+1]內(nèi)可用的存儲器,根據(jù)finalNeedLie的值進(jìn)行轉(zhuǎn)移,如果對應(yīng)性能的存儲器的容量達(dá)到閾值LOAD_THRESHOLD時,則將性能指數(shù)加1進(jìn)行轉(zhuǎn)移,依次類推,加到最大值還未找到則重新從性能最小值開始循環(huán)。

        2.3 數(shù)據(jù)分布優(yōu)化方案分析

        論文提出的數(shù)據(jù)分布優(yōu)化方案,將數(shù)據(jù)塊在DataNode內(nèi)部各存儲介質(zhì)間進(jìn)行遷移,能否高效的完成并去取得預(yù)期的效果取決于以下幾個關(guān)鍵因素。

        (1)合理確定存儲介質(zhì)的性能參數(shù)。 為了較準(zhǔn)確的確定數(shù)據(jù)塊的合理位置,必須為存儲介質(zhì)的讀寫性能確定一個合理的參數(shù)。如果這個參數(shù)不能科學(xué)的確定,調(diào)度工作就沒有科學(xué)的依據(jù),也就變得毫無意義。

        (2)合理評估數(shù)據(jù)被訪問的頻繁程度。 對數(shù)據(jù)塊進(jìn)行調(diào)度最大的根據(jù)就是數(shù)據(jù)塊被訪問的頻率,在系統(tǒng)實現(xiàn)中,必須根據(jù)數(shù)據(jù)塊被讀寫的次數(shù)對數(shù)據(jù)塊的熱度有一個科學(xué)的評估,同時聯(lián)系該數(shù)據(jù)塊所在的存儲介質(zhì)的性能參數(shù),合理的判定該數(shù)據(jù)塊是否需要被遷移。如果無法對數(shù)據(jù)的熱度進(jìn)行合理的評估,對數(shù)據(jù)塊的遷移就沒有了正確的方向,還有可能導(dǎo)致某個數(shù)據(jù)塊被遷來遷去,造成系統(tǒng)的震蕩,反而降低了原系統(tǒng)的性能。

        (3)保證各個存儲介質(zhì)有足夠的剩余空間。 在對數(shù)據(jù)進(jìn)行遷移的過程中,必須保證數(shù)據(jù)塊的合理分布,使各類型存儲介質(zhì)都能有足夠的剩余空間,以保證調(diào)度過程能正常的進(jìn)行。如果某種存儲介質(zhì)剩余空間太小,就會導(dǎo)致無法接收更適合存儲在其上的數(shù)據(jù)塊,導(dǎo)致調(diào)度過程異常。

        為使以上關(guān)鍵點得到有效的保證,本方案綜合考慮多種因素,并根據(jù)各要素對數(shù)據(jù)塊應(yīng)處的位置做出合理的判斷。

        (1)合理確定數(shù)據(jù)塊的存儲位置。 對數(shù)據(jù)塊進(jìn)行調(diào)度的重點就是確定數(shù)據(jù)塊存儲在何種性能的存儲介質(zhì)之上最為合理。本方案在確定這一問題時依據(jù)了存儲介質(zhì)的性能參數(shù)和數(shù)據(jù)塊被讀寫的次數(shù)這兩個因素。在熱數(shù)據(jù)調(diào)度和閾值調(diào)度的過程中,確定數(shù)據(jù)塊應(yīng)處位置的參數(shù)都是依據(jù)數(shù)據(jù)塊被讀寫次數(shù)和所在存儲介質(zhì)性能參數(shù)的比例關(guān)系,這樣會使讀寫次數(shù)較多而存儲介質(zhì)性能很差的數(shù)據(jù)塊得到較快的性能提升,而讀寫次數(shù)與存儲介質(zhì)性能參數(shù)相符的數(shù)據(jù)塊會由于兩者比值很小而保持在當(dāng)前位置或僅有較小的性能提升,較好的照顧到所處存儲介質(zhì)較差的熱數(shù)據(jù),同時也使處于合理位置的數(shù)據(jù)塊不會被頻繁的遷移,從而提高數(shù)據(jù)塊調(diào)度的效率,避免為系統(tǒng)增加過多的額外負(fù)擔(dān)。

        (2)保證數(shù)據(jù)在各存儲介質(zhì)間分布的平衡性。 隨著熱數(shù)據(jù)的遷移,性能較好的存儲介質(zhì)上的數(shù)據(jù)量會越來越大,如果不對數(shù)據(jù)分布的平衡性進(jìn)行考慮并建立相應(yīng)的機(jī)制加以保證,性能較好的存儲介質(zhì)的存儲空間會很快被耗盡,使更應(yīng)該被遷移到此種介質(zhì)上的數(shù)據(jù)塊無法完成遷移。本方案中的閾值調(diào)度較好的保證了數(shù)據(jù)在各存儲介質(zhì)間分布的平衡性。當(dāng)某種存儲介質(zhì)剩余存儲空間不足時,會對其進(jìn)行閾值調(diào)度,將存儲在其上的數(shù)據(jù)塊遷移到其他存儲介質(zhì)中。在進(jìn)行數(shù)據(jù)塊的遷移時,本方案重點考慮了數(shù)據(jù)塊被讀寫的次數(shù),根據(jù)讀寫次數(shù)將數(shù)據(jù)塊遷移到性能最合適的存儲介質(zhì)上,使得相應(yīng)數(shù)據(jù)塊在之后的調(diào)度過程中再次被遷移的可能性降到最低,從而提高了數(shù)據(jù)調(diào)度的整體性能。

        3 測試與分析

        3.1 測試環(huán)境

        論文所實現(xiàn)方案測試環(huán)境配置如表1所示。

        表1 測試環(huán)境配置

        3.2 性能測試與分析

        3.2.1 讀性能測試

        如圖1、圖2所示,在對原Hadoop系統(tǒng)進(jìn)行讀性能測試時,測試程序先頻繁地隨機(jī)讀取預(yù)存好的測試文件,持續(xù)一段任意長時間(測試時設(shè)定的時間為1 min)。然后測試程序?qū)⑹畟€測試文件分別讀入內(nèi)存并統(tǒng)計完成整個讀取過程花費的時間。在原Hadoop系統(tǒng)中,測試文件的位置整個測試的過程中保持其原來位置不變,未根據(jù)數(shù)據(jù)的熱度進(jìn)行遷移,客戶端讀取文件的平均速度為94.67 MB/s。在改進(jìn)后的Hadoop系統(tǒng)中,有3個文件(Text6、Text8、Text9)的讀取速度有顯著提升,這表明這些文件在被讀取的過程中存儲位置發(fā)生了改變,從低性能的存儲介質(zhì)遷移到了高性能的存儲介質(zhì)上,這使得客戶端讀取文件的平均速度提高為139.47 MB/s。改進(jìn)方案使Hadoop系統(tǒng)的數(shù)據(jù)讀取速度提高了47.3%。

        圖1 改進(jìn)前后系統(tǒng)數(shù)據(jù)讀速度對比

        圖2 改進(jìn)前后系統(tǒng)數(shù)據(jù)寫速度對比

        3.2.2 寫性能測試

        在對原Hadoop系統(tǒng)和改進(jìn)的系統(tǒng)進(jìn)行寫性能測試時,測試程序從外部存儲介質(zhì)(保證此存儲介質(zhì)未被Hadoop系統(tǒng)使用,測試中用的是移動硬盤)將預(yù)先準(zhǔn)備好的8個文件依次讀入內(nèi)存,然后寫入到Hadoop系統(tǒng)中,并統(tǒng)計從內(nèi)存中寫入Hadoop系統(tǒng)花費的時間。在原Hadoop系統(tǒng)中,文件的寫入位置是根據(jù)容量來隨機(jī)分配的,而在方案改進(jìn)后的Hadoop系統(tǒng)中,文件的寫入位置被盡可能的安排在寫性能較好的存儲介質(zhì)上,只有高性能存儲介質(zhì)上容量不足時文件才會寫到低性能存儲介質(zhì)上,這使得更多的文件被寫入了寫性能較好的存儲介質(zhì)。如圖2所示,原Hadoop系統(tǒng)的平均寫入速度為71.56 MB/s,改進(jìn)后的Hadoop系統(tǒng)的平均寫入速度為79.56 MB/s,改進(jìn)方案使Hadoop系統(tǒng)的數(shù)據(jù)寫入速度提高了11.2%。

        4 結(jié)語

        隨著越來越多的內(nèi)存、SSD等新型存儲設(shè)備被廣泛使用,混合存儲系統(tǒng)逐步成為目前研究的重點。當(dāng)前HDFS是針對同構(gòu)集群設(shè)計的,無法將混合存儲系統(tǒng)中存儲介質(zhì)的優(yōu)勢無法完全的發(fā)揮出來。現(xiàn)有的對HDFS進(jìn)行改進(jìn)的方案都是針對任務(wù)調(diào)度、存儲性能隔離等問題而提出的,但是大數(shù)據(jù)環(huán)境下需要合理分布數(shù)據(jù)以獲得更高的訪問效率,論文對Hadoop數(shù)據(jù)分布方案進(jìn)行了研究,提出一種在原系統(tǒng)處理邏輯基礎(chǔ)上的數(shù)據(jù)動態(tài)分布方案,在多種存儲介質(zhì)組成的混合存儲系統(tǒng)中優(yōu)化數(shù)據(jù)的分布,使Hadoop的讀速度提高了47.3%,寫速度提高了11.2%。同時方案根據(jù)數(shù)據(jù)塊的讀寫頻率,合理的判斷出數(shù)據(jù)塊的熱度并將數(shù)據(jù)塊遷移到最合適的存儲介質(zhì)之上,在數(shù)據(jù)遷移的過程中也為各存儲介質(zhì)的剩余空間的健康提供了保證機(jī)制,避免因數(shù)據(jù)塊的調(diào)度導(dǎo)致高性能存儲介質(zhì)爆滿。

        猜你喜歡
        存儲介質(zhì)閾值客戶端
        你的手機(jī)安裝了多少個客戶端
        “人民網(wǎng)+客戶端”推出數(shù)據(jù)新聞
        ——穩(wěn)就業(yè)、惠民生,“數(shù)”讀十年成績單
        改進(jìn)的軟硬閾值法及其在地震數(shù)據(jù)降噪中的研究
        土石壩壩體失穩(wěn)破壞降水閾值的確定方法
        基于小波變換閾值去噪算法的改進(jìn)
        改進(jìn)小波閾值對熱泵電機(jī)振動信號的去噪研究
        電子檔案離線存儲介質(zhì)的選擇分析
        媒體客戶端的發(fā)展策略與推廣模式
        新華社推出新版客戶端 打造移動互聯(lián)新聞旗艦
        淺析聲像檔案的保存與利用
        亚洲欧美国产日产综合不卡| 亚洲av综合永久无码精品天堂| 日韩a无v码在线播放| 亚洲爆乳大丰满无码专区| 成人免费播放片高清在线观看| 精品国产亚洲av麻豆| 97色伦综合在线欧美视频| 最新国产在线精品91尤物| 国产黄色一区二区福利| 国产手机在线观看一区二区三区 | av天堂网手机在线观看| 亚洲av永久无码精品漫画| 日韩av高清无码| 色优网久久国产精品| 日本高清视频在线观看一区二区 | 朋友的丰满人妻中文字幕| 国产精品免费久久久久影院| 无码丰满熟妇浪潮一区二区av| 日产分东风日产还有什么日产| а√中文在线资源库| 国产熟妇搡bbbb搡bbbb搡| 嗯啊 不要 啊啊在线日韩a| 中文字幕女同人妖熟女| 久久精品中文字幕大胸| 最新国产三级| 亚洲色图少妇熟女偷拍自拍| 26uuu在线亚洲欧美| 亚洲av无码av制服丝袜在线| 精品一区二区三区影片| 亚洲国产人成综合网站| 爱性久久久久久久久| 国产亚洲欧美在线观看的| 精品日本免费观看一区二区三区| 天天综合网网欲色| 99热久久这里只精品国产www| 亚洲色AV天天天天天天| 日本精品一区二区三区在线观看 | 国产精品成人av大片| 国产尤物av尤物在线观看| 中文 国产 无码免费| 青青久久精品一本一区人人|