最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

一種基于文件預(yù)測(cè)的分布式緩存模型的制作方法

文檔序號(hào):7781189閱讀:320來(lái)源:國(guó)知局
一種基于文件預(yù)測(cè)的分布式緩存模型的制作方法
【專利摘要】本發(fā)明涉及一種基于文件預(yù)測(cè)的分布式緩存模型,建立在分布式文件系統(tǒng)之上,每個(gè)客戶端維護(hù)本機(jī)之上的DLS(double?last?successor)文件預(yù)測(cè)數(shù)據(jù),每次讀請(qǐng)求時(shí),同時(shí)預(yù)讀DLS文件預(yù)測(cè)模型中預(yù)測(cè)的讀請(qǐng)求目標(biāo)文件之后的兩個(gè)文件;服務(wù)器端維護(hù)兩個(gè)隊(duì)列:讀請(qǐng)求隊(duì)列和預(yù)讀請(qǐng)求隊(duì)列。DLSDCM(DLS?based?distributed?cache?model)的實(shí)現(xiàn)分為兩部分:客戶端的實(shí)現(xiàn)和服務(wù)器端的實(shí)現(xiàn);每個(gè)客戶端獨(dú)立維護(hù)一份文件預(yù)測(cè)數(shù)據(jù);服務(wù)器端負(fù)責(zé)客戶端的讀請(qǐng)求調(diào)度和預(yù)讀請(qǐng)求調(diào)度。本發(fā)明模型以客戶端文件預(yù)測(cè)模型為基礎(chǔ)進(jìn)行文件預(yù)測(cè),從服務(wù)器角度對(duì)分布式網(wǎng)絡(luò)中所有用戶請(qǐng)求進(jìn)行統(tǒng)籌調(diào)度,在提高客戶端吞吐量和數(shù)據(jù)訪問(wèn)的同時(shí)又不會(huì)影響其它客戶的數(shù)據(jù)訪問(wèn)。
【專利說(shuō)明】一種基于文件預(yù)測(cè)的分布式緩存模型
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種基于文件預(yù)測(cè)的分布式緩存模型,屬于計(jì)算機(jī)【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]隨著處理器的高速發(fā)展,I/O與處理器之間的鴻溝越來(lái)越大,低下的I/O速度嚴(yán)重影響了分布式存儲(chǔ)的性能,緩存與預(yù)取技術(shù)的發(fā)展從軟件角度提升了 I/o性能。預(yù)取可改善系統(tǒng)I/o的兩個(gè)主要性能指標(biāo):利用異步預(yù)取在程序使用文件之前將文件準(zhǔn)備就緒,可對(duì)應(yīng)用程序隱藏磁盤I/o延時(shí);將小粒度讀取合并為大粒度讀取,可提高磁盤有效利用率和I/O吞吐量。
[0003]利用大量廉價(jià)PC搭起來(lái)的分布式存儲(chǔ)系統(tǒng)中,同時(shí)具備了單機(jī)中的磁盤I/O瓶頸和網(wǎng)絡(luò)帶寬的瓶頸,從數(shù)據(jù)庫(kù)中查找數(shù)據(jù)也是一個(gè)重要延時(shí)因素。典型的分布式緩存系統(tǒng)如Oracle coherence, Memcached, Terracotta,此類分布式緩存對(duì)網(wǎng)格中的緩存資源進(jìn)行統(tǒng)一管理,支持在線擴(kuò)展以及數(shù)據(jù)分布均衡等功能,從數(shù)據(jù)管理方面來(lái)講可認(rèn)為是從系統(tǒng)層面對(duì)時(shí)間局部性強(qiáng)的數(shù)據(jù)進(jìn)行緩存。緩存也可以從應(yīng)用程序角度對(duì)數(shù)據(jù)的讀取操作進(jìn)行優(yōu)化,根據(jù)應(yīng)用程序使用文件的規(guī)律,預(yù)測(cè)將要使用的文件并提前異步讀入,在程序使用文件時(shí)便可降低訪問(wèn)延時(shí),一種基于用戶的LNS文件預(yù)測(cè)模型、一種識(shí)別I_0Feature的文件預(yù)測(cè)模型就屬于此類型緩存策略。
[0004]數(shù)據(jù)的訪問(wèn)請(qǐng)求并非完全隨機(jī),它是由用戶或程序的行為驅(qū)動(dòng),用戶執(zhí)行某種應(yīng)用程序去訪問(wèn)數(shù)據(jù),連續(xù)訪問(wèn)的不同文件之間必然存在一定的關(guān)聯(lián)??蓸?gòu)造一種文件預(yù)測(cè)模型,通過(guò)對(duì)數(shù)據(jù)本體間的內(nèi)在聯(lián)系或者歷史訪問(wèn)記錄進(jìn)行分析并構(gòu)造出預(yù)測(cè)數(shù)據(jù)庫(kù),依預(yù)測(cè)數(shù)據(jù)對(duì)文件進(jìn)行異步預(yù)讀取并緩存,當(dāng)應(yīng)用程序使用這些數(shù)據(jù)時(shí),便可大幅度減少數(shù)據(jù)的訪問(wèn)延時(shí),同時(shí)也減少了網(wǎng)絡(luò)空閑時(shí)間,提升了網(wǎng)絡(luò)使用效率。

【發(fā)明內(nèi)容】

[0005]本發(fā)明的目的在于提供一種基于文件預(yù)測(cè)的分布式緩存模型DLSDCM (DLS baseddistribute cache model),此模型以客戶端文件預(yù)測(cè)模型為基礎(chǔ)進(jìn)行文件預(yù)測(cè),從服務(wù)器角度對(duì)分布式網(wǎng)絡(luò)中所有用戶請(qǐng)求進(jìn)行統(tǒng)籌調(diào)度,在提高客戶端吞吐量和數(shù)據(jù)訪問(wèn)的同時(shí)又不會(huì)影響其它客戶的數(shù)據(jù)訪問(wèn)。
[0006]為了實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下。
[0007]一種基于文件預(yù)測(cè)的分布式緩存模型,所述緩存模型建立在分布式文件系統(tǒng)之上,每個(gè)客戶端維護(hù)本機(jī)之上的DLS文件預(yù)測(cè)數(shù)據(jù),每次讀請(qǐng)求時(shí),同時(shí)預(yù)讀DLS文件預(yù)測(cè)模型中預(yù)測(cè)的讀請(qǐng)求目標(biāo)文件之后的兩個(gè)文件;服務(wù)器端維護(hù)兩個(gè)隊(duì)列:讀請(qǐng)求隊(duì)列和預(yù)讀請(qǐng)求隊(duì)列,其中讀請(qǐng)求隊(duì)列的優(yōu)先級(jí)高于預(yù)讀請(qǐng)求隊(duì)列,即只要讀請(qǐng)求隊(duì)列不為空,預(yù)讀請(qǐng)求隊(duì)列就處于等待狀態(tài);
[0008]DLSDCM的實(shí)現(xiàn)分為兩部分:客戶端的實(shí)現(xiàn)和服務(wù)器端的實(shí)現(xiàn);每個(gè)客戶端獨(dú)立維護(hù)一份文件預(yù)測(cè)數(shù)據(jù),預(yù)測(cè)數(shù)據(jù)中每個(gè)數(shù)據(jù)節(jié)點(diǎn)包括文件名、兩個(gè)預(yù)讀文件名以及每個(gè)預(yù)讀文件所命中的次數(shù),每次讀請(qǐng)求時(shí)都根據(jù)文件預(yù)測(cè)數(shù)據(jù)節(jié)點(diǎn)中預(yù)測(cè)的文件進(jìn)行異步預(yù)讀;服務(wù)器端負(fù)責(zé)客戶端的讀請(qǐng)求調(diào)度和預(yù)讀請(qǐng)求調(diào)度;
[0009]其中,所述DLSDCM客戶端的實(shí)現(xiàn)是根據(jù)DLS文件預(yù)測(cè)模型所預(yù)測(cè)的數(shù)據(jù)進(jìn)行文件的預(yù)讀,并將過(guò)大的數(shù)據(jù)存儲(chǔ)于本地磁盤;一次讀請(qǐng)求的系統(tǒng)執(zhí)行過(guò)程如下:
[0010]①讀取存儲(chǔ)于磁盤的DLS文件預(yù)測(cè)數(shù)據(jù);
[0011]②申請(qǐng)大小數(shù)據(jù)一定量(大小視具體軟硬件而定,能手動(dòng)修改)內(nèi)存作為讀請(qǐng)求緩存和預(yù)讀請(qǐng)求緩存,在磁盤上創(chuàng)建緩存目錄;
[0012]⑧遍歷DLS文件預(yù)測(cè)數(shù)據(jù)節(jié)點(diǎn):若數(shù)據(jù)節(jié)點(diǎn)中無(wú)本次讀請(qǐng)求文件對(duì)應(yīng)的數(shù)據(jù)則向服務(wù)器發(fā)送讀請(qǐng)求,創(chuàng)建數(shù)據(jù)節(jié)點(diǎn)并插入文件預(yù)讀數(shù)據(jù),并將本次讀請(qǐng)求文件名寫入上一次讀請(qǐng)求文件名對(duì)應(yīng)的預(yù)測(cè)數(shù)據(jù)節(jié)點(diǎn)中,并替換其中命中次數(shù)較少的預(yù)測(cè)文件;若預(yù)測(cè)數(shù)據(jù)中存在本次讀請(qǐng)求文件,則檢查讀請(qǐng)求文件是否存在于預(yù)讀請(qǐng)求緩存或磁盤緩存目錄中:
[0013]A、讀請(qǐng)求文件存在于緩存并且數(shù)據(jù)仍未傳輸完成,則向服務(wù)器發(fā)送信號(hào)把該文件預(yù)讀請(qǐng)求改為讀請(qǐng)求,終止另一個(gè)預(yù)讀文件的數(shù)據(jù)傳輸,并將預(yù)測(cè)數(shù)據(jù)中上一次讀請(qǐng)求文件對(duì)應(yīng)的預(yù)讀數(shù)據(jù)節(jié)點(diǎn)中本次讀請(qǐng)求文件的命中次數(shù)+1操作;
[0014]B、讀請(qǐng)求文件存在于緩存并且文件已傳輸完畢,則將預(yù)測(cè)數(shù)據(jù)中上一次讀請(qǐng)求文件對(duì)應(yīng)的預(yù)讀數(shù)據(jù)節(jié)點(diǎn)中本次讀請(qǐng)求文件的命中次數(shù)+1操作;
[0015]C、讀請(qǐng)求文件不存在于緩存中且預(yù)讀文件正在傳輸,則向服務(wù)器發(fā)信號(hào)中斷正在傳輸?shù)臄?shù)據(jù),將緩存空間清零并發(fā)送本次讀請(qǐng)求和預(yù)讀請(qǐng)求;
[0016]D、讀請(qǐng)求文件不存在于緩存中且預(yù)讀文件已傳輸完畢,則將緩存空間清零并發(fā)送本次讀請(qǐng)求和預(yù)讀請(qǐng)求;
[0017]④當(dāng)預(yù)讀文件大于內(nèi)存緩存大小時(shí),將預(yù)讀文件寫入磁盤緩存目錄:
[0018]讀請(qǐng)求緩存區(qū)和預(yù)讀請(qǐng)求緩存區(qū)在一次讀請(qǐng)求結(jié)束后會(huì)保留一段時(shí)間,若長(zhǎng)時(shí)間無(wú)新讀請(qǐng)求則回收讀請(qǐng)求緩存區(qū)和預(yù)讀請(qǐng)求緩存區(qū);磁盤緩存目錄中數(shù)據(jù)長(zhǎng)時(shí)間保留,當(dāng)緩存目錄中數(shù)據(jù)將要達(dá)到規(guī)定值時(shí)采用先存放先回收的策略回收最早存放的數(shù)據(jù);
[0019]所述DLSDCM服務(wù)器端的實(shí)現(xiàn)過(guò)程為:
[0020]服務(wù)器視所有客戶端為平等優(yōu)先級(jí),按照傳統(tǒng)的先來(lái)先服務(wù)策略進(jìn)行調(diào)度,服務(wù)器響應(yīng)讀請(qǐng)求和數(shù)據(jù)傳輸?shù)膱?zhí)行過(guò)程如下:
[0021 ] ①將讀請(qǐng)求加入讀請(qǐng)求隊(duì)列,將預(yù)讀請(qǐng)求加入預(yù)讀請(qǐng)求隊(duì)列;
[0022]②若讀請(qǐng)求隊(duì)列不為空,則依次傳輸讀請(qǐng)求數(shù)據(jù);若讀請(qǐng)求隊(duì)列為空,則傳輸預(yù)讀請(qǐng)求數(shù)據(jù);
[0023]③若收到預(yù)讀請(qǐng)求轉(zhuǎn)讀請(qǐng)求的信號(hào),則將對(duì)應(yīng)文件加入讀請(qǐng)求隊(duì)列隊(duì)尾;若收到預(yù)讀終止信號(hào)則終止數(shù)據(jù)傳輸并將對(duì)應(yīng)文件從預(yù)讀請(qǐng)求對(duì)于刪除。
[0024]所述DLSDCM需要進(jìn)行性能測(cè)試,所述DLSDCM的性能測(cè)試以HDFS (HadoopDistributed File System)為例進(jìn)行測(cè)試,首先單獨(dú)使用HDFS進(jìn)行文件的讀操作,然后使用DLSDCM基于HDFS對(duì)同樣的目標(biāo)文件進(jìn)行重復(fù)的讀操作,對(duì)比二者的訪問(wèn)延時(shí),可得出使用DLSDCM模型后的HDFS是否有I/O性能的提高;所述測(cè)試環(huán)境如下:①硬件環(huán)境:3臺(tái)PC機(jī)搭建而成的后臺(tái)集群和I臺(tái)客戶端pc機(jī),硬件配置為Pentium E5800雙核,3.20GHz主頻CPU ;2G內(nèi)存;7200轉(zhuǎn)硬盤;②軟件環(huán)境:操作系統(tǒng)為ubuntull.10,hadoop版本為1.0.4 ;③讀操作對(duì)象文件:大小介于IOK至120k之間總計(jì)46434個(gè)文件;所述測(cè)試過(guò)程為:首先單獨(dú)使用HDFS對(duì)文件進(jìn)行讀操作10分鐘,計(jì)算平均讀操作延時(shí),然后使用DLSDCM基于HDFS對(duì)文件進(jìn)行重復(fù)讀操作一小時(shí)(因?yàn)镈LSDCM是一個(gè)針對(duì)長(zhǎng)期讀操作的緩存模型,重復(fù)讀I小時(shí)是為了創(chuàng)造一個(gè)已經(jīng)進(jìn)行了長(zhǎng)期讀操作的環(huán)境),然后再運(yùn)行10分鐘,計(jì)算這10分鐘之內(nèi)的平均讀操作延時(shí)。
[0025]該發(fā)明的有益效果在于:本發(fā)明技術(shù)基于文件預(yù)測(cè)的分布式緩存模型DLSDCM (DLSbased distribute cache model),此模型以客戶端文件預(yù)測(cè)模型為基礎(chǔ)進(jìn)行文件預(yù)測(cè),從服務(wù)器角度對(duì)分布式網(wǎng)絡(luò)中所有用戶請(qǐng)求進(jìn)行統(tǒng)籌調(diào)度,在提高客戶端吞吐量和數(shù)據(jù)訪問(wèn)的同時(shí)又不會(huì)影響其它客戶的數(shù)據(jù)訪問(wèn)。
【專利附圖】

【附圖說(shuō)明】
[0026]圖1是本發(fā)明實(shí)施例中DLS文件預(yù)測(cè)模型圖。
[0027]圖2是本發(fā)明實(shí)施例中DLSDCM緩存模型圖。
【具體實(shí)施方式】
[0028]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明的【具體實(shí)施方式】進(jìn)行描述,以便更好的理解本發(fā)明。
[0029]實(shí)施例
[0030]一種基于文件預(yù)測(cè)的分布式緩存模型,具體包括:
[0031](I) LS文件預(yù)測(cè)模型:
[0032]當(dāng)用戶訪問(wèn)一系列數(shù)據(jù)時(shí),或多或少會(huì)重復(fù)上一次的訪問(wèn)順序,因此LS (Iastsuccessor)模型是最常用也最簡(jiǎn)單的文件預(yù)測(cè)模型,被多數(shù)預(yù)測(cè)系統(tǒng)采用。但是LS文件預(yù)測(cè)模型在交替訪問(wèn)文件時(shí)就會(huì)完全失效,例如第一次訪問(wèn)順序?yàn)槲募嗀,文件B ;第二次訪問(wèn)順序?yàn)槲募嗀,文件I ;第三次又重復(fù)第一次順序:文件A,文件B。對(duì)于這樣的交替訪問(wèn),使用LS模型預(yù)測(cè)文件A的后繼便完全失敗。若將預(yù)測(cè)的文件數(shù)擴(kuò)大為兩個(gè),即對(duì)于每個(gè)文件同時(shí)預(yù)讀其上一次訪問(wèn)的后繼文件和上上一次訪問(wèn)的后繼文件,便可避免交替訪問(wèn)的預(yù)測(cè)失效,據(jù)此本實(shí)施例提出一種DLS(double last successor)文件預(yù)測(cè)模型。
[0033](2) DLS文件預(yù)測(cè)模型:
[0034]預(yù)測(cè)命中率是文件預(yù)測(cè)的關(guān)鍵,LS預(yù)測(cè)模型嚴(yán)重依賴于用戶的訪問(wèn)順序,訪問(wèn)順序稍有差異,預(yù)測(cè)便未命中,錯(cuò)誤的預(yù)測(cè)不但無(wú)法提高訪問(wèn)延時(shí),還會(huì)增加I/o和緩存區(qū)的浪費(fèi)。DLS文件預(yù)測(cè)模型一次預(yù)測(cè)兩個(gè)文件:上一次訪問(wèn)順序中的后繼和上上一次訪問(wèn)順序的后繼,兩個(gè)文件命中的概率比預(yù)測(cè)單一文件會(huì)有大約兩倍的提高。圖1所示為DLS模型對(duì)文件A后繼的預(yù)測(cè),圖中文件A,B, I, U,d代表獨(dú)立的文件,而非順序文件。
[0035]由于一次預(yù)測(cè)兩個(gè)文件,因此數(shù)據(jù)傳輸時(shí)也會(huì)有兩個(gè)文件同時(shí)傳輸,參考使用概率圖來(lái)預(yù)測(cè)未來(lái)文件訪問(wèn)的文件預(yù)測(cè)模型[6],分別記錄文件B和I的預(yù)測(cè)命中次數(shù),并依命中次數(shù)來(lái)決定兩個(gè)文件傳輸時(shí)各自占用的帶寬比例,例如記錄中文件B命中了 40次,文件I命中了 60次,此時(shí)文件B占40%帶寬,文件I占60%的帶寬比例進(jìn)行傳輸。
[0036](3) LS和DLS兩種文件預(yù)測(cè)模型對(duì)比:
[0037]文件預(yù)測(cè)算法很多,每種預(yù)測(cè)算法都有其最適用的場(chǎng)合。下面從理論上來(lái)對(duì)比LS文件預(yù)測(cè)模型和DLS文件預(yù)測(cè)模型在DLSDCM中的適用性,以圖1為例來(lái)對(duì)比LS文件預(yù)測(cè)模型和DLS文件預(yù)測(cè)模型的命中率和有效使用率:現(xiàn)假設(shè)文件B和I命中率相等都是20%,文件B和I的大小均為1M。表1為網(wǎng)絡(luò)空閑時(shí)間不大于傳輸IM數(shù)據(jù)所用時(shí)間的情況。
[0038]表1網(wǎng)絡(luò)空閑時(shí)間不大于傳輸IM時(shí)DLS與LS的對(duì)比
[0039]
【權(quán)利要求】
1.一種基于文件預(yù)測(cè)的分布式緩存模型,其特征在于:所述緩存模型建立在分布式文件系統(tǒng)之上,每個(gè)客戶端維護(hù)本機(jī)之上的DLS文件預(yù)測(cè)數(shù)據(jù),每次讀請(qǐng)求時(shí),同時(shí)預(yù)讀DLS文件預(yù)測(cè)模型中預(yù)測(cè)的讀請(qǐng)求目標(biāo)文件之后的兩個(gè)文件;服務(wù)器端維護(hù)兩個(gè)隊(duì)列:讀請(qǐng)求隊(duì)列和預(yù)讀請(qǐng)求隊(duì)列,其中讀請(qǐng)求隊(duì)列的優(yōu)先級(jí)高于預(yù)讀請(qǐng)求隊(duì)列,即只要讀請(qǐng)求隊(duì)列不為空,預(yù)讀請(qǐng)求隊(duì)列就處于等待狀態(tài); DLSDCM的實(shí)現(xiàn)分為兩部分:客戶端的實(shí)現(xiàn)和服務(wù)器端的實(shí)現(xiàn);每個(gè)客戶端獨(dú)立維護(hù)一份文件預(yù)測(cè)數(shù)據(jù),預(yù)測(cè)數(shù)據(jù)中每個(gè)數(shù)據(jù)節(jié)點(diǎn)包括文件名、兩個(gè)預(yù)讀文件名以及每個(gè)預(yù)讀文件所命中的次數(shù),每個(gè)讀請(qǐng)求操作同時(shí)對(duì)文件預(yù)測(cè)數(shù)據(jù)節(jié)點(diǎn)中預(yù)測(cè)的文件進(jìn)行預(yù)讀操作;服務(wù)器端負(fù)責(zé)客戶端的讀請(qǐng)求調(diào)度和預(yù)讀請(qǐng)求調(diào)度; 其中,所述DLSDCM客戶端的實(shí)現(xiàn)是根據(jù)DLS文件預(yù)測(cè)模型所預(yù)測(cè)的數(shù)據(jù)進(jìn)行文件的預(yù)讀,并將過(guò)大的數(shù)據(jù)存儲(chǔ)于本地磁盤;一次讀請(qǐng)求的系統(tǒng)執(zhí)行過(guò)程如下: ①讀取存儲(chǔ)于磁盤的DLS文件預(yù)測(cè)數(shù)據(jù); ②申請(qǐng)大小數(shù)據(jù)一定量(大小視具體軟硬件而定,能手動(dòng)修改)內(nèi)存作為讀請(qǐng)求緩存和預(yù)讀請(qǐng)求緩存,在磁盤上創(chuàng)建緩存目錄; ③查詢DLS文件預(yù)測(cè)數(shù)據(jù)節(jié)點(diǎn):若數(shù)據(jù)節(jié)點(diǎn)中無(wú)本次讀請(qǐng)求文件對(duì)應(yīng)的數(shù)據(jù)則向服務(wù)器發(fā)送讀請(qǐng)求,創(chuàng)建本次讀請(qǐng)求文件數(shù)據(jù)節(jié)點(diǎn)并寫入文件預(yù)讀數(shù)據(jù),將本次讀請(qǐng)求文件名寫入上一次讀請(qǐng)求文件名對(duì)應(yīng)的預(yù)測(cè)數(shù)據(jù)節(jié)點(diǎn)中,并替換其中命中次數(shù)較少的預(yù)測(cè)文件;若預(yù)測(cè)數(shù)據(jù)中存在本次讀請(qǐng)求文件,則檢查讀請(qǐng)求文件是否存在于預(yù)讀請(qǐng)求緩存或磁盤緩存目錄中: A、讀請(qǐng)求文件存在于緩存并且數(shù)據(jù)傳輸仍未結(jié)束,則向服務(wù)器發(fā)送信號(hào)把該文件的預(yù)讀請(qǐng)求轉(zhuǎn)為讀請(qǐng)求,并發(fā)送信號(hào)終止另一個(gè)預(yù)讀文件的數(shù)據(jù)傳輸,同時(shí)將預(yù)測(cè)數(shù)據(jù)中上一次讀請(qǐng)求文件對(duì)應(yīng)的預(yù)讀數(shù)據(jù)節(jié)點(diǎn)中本次讀請(qǐng)求文件的命中次數(shù)+1操作;; B、讀請(qǐng)求文件存在于緩存并且文件已傳輸完畢,則將預(yù)測(cè)數(shù)據(jù)中上一次讀請(qǐng)求文件對(duì)應(yīng)的預(yù)讀數(shù)據(jù)節(jié)點(diǎn)中本次讀請(qǐng)求文件的命中次數(shù)+1操作; C、讀請(qǐng)求文件不存在于緩存中且預(yù)讀文件正在傳輸,則向服務(wù)器發(fā)送信號(hào)中斷正在傳輸?shù)臄?shù)據(jù),將緩存空間清零并發(fā)送本次讀請(qǐng)求和預(yù)讀請(qǐng)求; D、讀請(qǐng)求文件不存在于緩存中且預(yù)讀文件已傳輸完畢,則將緩存空間清零并發(fā)送本次讀請(qǐng)求和預(yù)讀請(qǐng)求; ④當(dāng)預(yù)讀文件大于內(nèi)存緩存大小時(shí),將預(yù)讀文件寫入磁盤緩存目錄: 讀請(qǐng)求緩存區(qū)和預(yù)讀請(qǐng)求緩存區(qū)在一次讀請(qǐng)求結(jié)束后會(huì)保留一段時(shí)間,若長(zhǎng)時(shí)間無(wú)新讀請(qǐng)求則回收讀請(qǐng)求緩存區(qū)和預(yù)讀請(qǐng)求緩存區(qū);磁盤緩存目錄中數(shù)據(jù)長(zhǎng)時(shí)間保留,當(dāng)緩存目錄中數(shù)據(jù)將要達(dá)到規(guī)定值時(shí)采用先存放先回收的策略回收最早存放的數(shù)據(jù); 所述DLSDCM服務(wù)器端的實(shí)現(xiàn)過(guò)程為: 服務(wù)器端主要負(fù)責(zé)響應(yīng)客戶端的請(qǐng)求信號(hào)和對(duì)讀請(qǐng)求隊(duì)列與預(yù)讀請(qǐng)求隊(duì)列的調(diào)度;在調(diào)度方面,服務(wù)器視所有客戶端為平等優(yōu)先級(jí)(默認(rèn)為平等優(yōu)先級(jí),可對(duì)特定客戶端優(yōu)先級(jí)進(jìn)行修改),按照傳統(tǒng)的先來(lái)先服務(wù)策略分別對(duì)讀請(qǐng)求和預(yù)讀請(qǐng)求進(jìn)行調(diào)度,預(yù)讀請(qǐng)求隊(duì)列每個(gè)節(jié)點(diǎn)中包含兩個(gè)文件信息,在被調(diào)度傳輸時(shí)同時(shí)傳輸兩個(gè)文件,并根據(jù)相應(yīng)的比例來(lái)分配傳輸帶寬;響應(yīng)請(qǐng)求信號(hào)方面,主要響應(yīng)客戶端的五種請(qǐng)求信號(hào):讀請(qǐng)求,預(yù)讀請(qǐng)求,預(yù)讀請(qǐng)求轉(zhuǎn)讀請(qǐng)求,預(yù)讀終止以及讀終止;對(duì)于五種信號(hào)的處理如下:①「收到讀請(qǐng)求信號(hào),將響應(yīng)的讀請(qǐng)求文件加入讀請(qǐng)求隊(duì)列的隊(duì)尾,讀請(qǐng)求隊(duì)列為空則直接加入并搶占正在被調(diào)度的預(yù)讀請(qǐng)求的數(shù)據(jù)傳輸; ②「收到預(yù)讀請(qǐng)求信號(hào),將預(yù)讀請(qǐng)求文件加入預(yù)讀請(qǐng)求隊(duì)列,并標(biāo)記兩個(gè)預(yù)讀請(qǐng)求文件在傳輸時(shí)占據(jù)的帶寬比例,隊(duì)列中兩個(gè)文件占用一個(gè)節(jié)點(diǎn),在被調(diào)度時(shí)根據(jù)比例傳輸兩個(gè)文件數(shù)據(jù); ③「收到預(yù)讀請(qǐng)求轉(zhuǎn)讀請(qǐng)求信號(hào),則將對(duì)應(yīng)文件加入讀請(qǐng)求隊(duì)列隊(duì)尾;將文件所在的預(yù)讀請(qǐng)求隊(duì)列節(jié)點(diǎn)刪除; ④「收到預(yù)讀終止信號(hào),則終止數(shù)據(jù)傳輸,將預(yù)讀文件所在節(jié)點(diǎn)從預(yù)讀隊(duì)列中刪除; ⑤「收到讀終止信號(hào),結(jié)束文件傳輸,將文件節(jié)點(diǎn)從讀請(qǐng)求隊(duì)列刪除。
2.根據(jù)權(quán)利要I所述的一種基于文件預(yù)測(cè)的分布式緩存模型,其特征在于:所述DLSDCM需要進(jìn)行性能測(cè)試,所述DLSDCM的性能測(cè)試以HDFS (Hadoop Distributed FileSystem)為例進(jìn)行測(cè)試,首先單獨(dú)使用HDFS進(jìn)行文件的讀操作,然后使用DLSDCM基于HDFS對(duì)同樣的目標(biāo)文件進(jìn)行重復(fù)的讀操作,對(duì)比二者的訪問(wèn)延時(shí),可得出使用DLSDCM模型后的HDFS是否有I/O性能的提高;所述測(cè)試環(huán)境如下:①硬件環(huán)境:3臺(tái)PC機(jī)搭建而成的后臺(tái)集群和I臺(tái)客戶端pc機(jī),硬件配置為Pentium E5800雙核,3.20GHz主頻CPU ;2G內(nèi)存;7200轉(zhuǎn)硬盤;②軟件環(huán)境:操作系統(tǒng)為ubuntull.10, hadoop版本為1.0.4 ;⑧讀操作對(duì)象文件:大小介于IOK至120k之間總計(jì)46434個(gè)文件;所述測(cè)試過(guò)程為:首先單獨(dú)使用HDFS對(duì)文件進(jìn)行讀操作10分鐘,計(jì)算平均讀操作延時(shí),然后使用DLSDCM基于HDFS對(duì)文件進(jìn)行重復(fù)讀操作一小時(shí)(因?yàn)镈LSDCM是一個(gè)針對(duì)長(zhǎng)期讀操作的緩存模型,重復(fù)讀I小時(shí)是為了創(chuàng)造一個(gè)已經(jīng)進(jìn)行了長(zhǎng)期讀操作的環(huán)境),然后再運(yùn)行10分鐘,計(jì)算這10分鐘之內(nèi)的平均讀操作延時(shí)。`
【文檔編號(hào)】H04L29/08GK103795781SQ201310703851
【公開日】2014年5月14日 申請(qǐng)日期:2013年12月10日 優(yōu)先權(quán)日:2013年12月10日
【發(fā)明者】陳莉君, 張勝利 申請(qǐng)人:西安郵電大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1