国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種云存儲中小文件的合并方法及裝置與流程

      文檔序號:11250720閱讀:800來源:國知局
      一種云存儲中小文件的合并方法及裝置與流程

      本發(fā)明涉及數(shù)據(jù)存儲技術(shù)領(lǐng)域,特別涉及一種云存儲中小文件的合并方法及裝置。



      背景技術(shù):

      隨著現(xiàn)代社會科技的發(fā)展,云存儲作為一種新興的網(wǎng)絡(luò)存儲技術(shù)已經(jīng)廣泛應(yīng)用到人們的生活中。hdfs(hadoopdistributedfilesystem)是一種具有高度容錯性質(zhì)的分布式文件系統(tǒng)模型,可以部署在支持java運行環(huán)境的普通機器或虛擬機上,能夠提供高吞吐量的數(shù)據(jù)訪問,非常適合部署云存儲平臺。

      hdfs采用主從式架構(gòu)設(shè)計模式(master/slavearchitecture),一個名稱節(jié)點(namenode)和若干數(shù)據(jù)節(jié)點(datanode)構(gòu)成hdfs集群。hdfs的這種單名稱節(jié)點的設(shè)計極大地簡化了文件系統(tǒng)的結(jié)構(gòu),然而也因此引發(fā)了hdfs的小文件存儲效率低的問題。

      現(xiàn)有技術(shù)中,解決如基于hdfs的存儲系統(tǒng)的云存儲中小文件存儲效率問題的主流思想是將小文件合并或組合為大文件,目前主要的方法分為2種,一種是利用hadoop歸檔(hadooparchive,har)等技術(shù)實現(xiàn)小文件合并的方法,另一種則是針對具體的應(yīng)用而提出的文件組合方法。這兩種方法都是基于文件的合并或組合來解決小文件存儲效率不高的問題,然而這兩種方法均存在以下問題:未考慮云存儲系統(tǒng)的負載狀況,云存儲作為一個完整的系統(tǒng),在提高小文件存儲效率的同時,也應(yīng)該考慮到系統(tǒng)的負載狀況,因為不管是文件合并還是文件組合,對與如hdfs的云存儲系統(tǒng)而言都是一個額外的操作;并且未對小文件合并規(guī)模進行研究,即尚未確定多少個小文件合并為一個大文件可以使系統(tǒng)性能達到最優(yōu)。因此,如何根據(jù)云存儲系統(tǒng)的負載狀況,對達到一定規(guī)模小文件進行合并,實現(xiàn)云存儲系統(tǒng)的負載均衡,優(yōu)化小文件存儲效率,是現(xiàn)今急需解決的問題。



      技術(shù)實現(xiàn)要素:

      本發(fā)明的目的是提供一種云存儲中小文件的合并方法及裝置,以采用序列文件技術(shù)將小文件合并為大文件,并利用系統(tǒng)負載預(yù)測算法實現(xiàn)系統(tǒng)的負載均衡,優(yōu)化小文件存儲效率。

      為解決上述技術(shù)問題,本發(fā)明提供一種云存儲中小文件的合并方法,包括:

      接收sfq發(fā)送的隊列滿信號;

      通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載;

      判斷所述負載是否小于第一閾值;

      若否,則將當(dāng)前時刻的所述sfq存儲的小文件的索引號存儲至對應(yīng)的一個bq;其中,每個bq存儲各自對應(yīng)的一個時刻的所述sfq的索引號;

      若是,則合并所述sfq存儲的索引號對應(yīng)的小文件,或合并所述sfq和全部bq各自存儲的索引號對應(yīng)的小文件。

      可選的,所述將當(dāng)前時刻的所述sfq存儲的小文件的索引號存儲至對應(yīng)的一個bq,包括:

      判斷已存儲索引號的bq是否達到預(yù)設(shè)數(shù)量;

      若是,則合并所述sfq和全部bq各自存儲的索引號對應(yīng)的小文件;

      若否,則將當(dāng)前時刻的所述sfq存儲的索引號存儲至對應(yīng)的一個bq。

      可選的,所述接收sfq發(fā)送的隊列滿信號之前,還包括:

      基于序列文件技術(shù),將用戶上傳的小文件的所述索引號存儲至所述sfq;

      所述sfq存儲的所述索引號的數(shù)量達到第二閾值時,發(fā)送所述隊列滿信號。

      可選的,所述通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載,包括:

      通過基于層次分析法的系統(tǒng)負載預(yù)測算法計算所述負載。

      可選的,所述接收sfq發(fā)送的隊列滿信號,包括:

      識別接收到的信號;其中,所述信號包括所述隊列滿信號和定時器發(fā)送的時間到信號;

      若所述信號為所述隊列滿信號,則執(zhí)行所述通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載的步驟;

      若所述信號為所述時間到信號,則通過所述系統(tǒng)負載預(yù)測算法計算所述負載;

      判斷所述負載是否小于所述第一閾值;

      若所述負載小于所述第一閾值,則合并全部bq各自存儲的索引號對應(yīng)的小文件。

      可選的,所述識別接收到的信號之前,還包括:

      所述定時器按預(yù)設(shè)時間間隔發(fā)送所述時間到信號。

      此外,本發(fā)明還提供了一種云存儲中小文件的合并裝置,包括:

      接收模塊,用于接收sfq發(fā)送的隊列滿信號;

      計算模塊,用于通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載;

      判斷模塊,用于判斷所述負載是否小于第一閾值;

      存儲模塊,用于當(dāng)所述負載不小于所述第一閾值時,將當(dāng)前時刻的所述sfq存儲的小文件的索引號存儲至對應(yīng)的一個bq;其中,每個bq存儲各自對應(yīng)的一個時刻的所述sfq的索引號;

      合并模塊,用于當(dāng)所述負載小于所述第一閾值時,合并所述sfq存儲的索引號對應(yīng)的小文件,或合并所述sfq和全部bq各自存儲的索引號對應(yīng)的小文件。

      可選的,所述存儲模塊,包括:

      第一判斷子模塊,用于判斷已存儲索引號的bq是否達到預(yù)設(shè)數(shù)量;

      第一合并子模塊,用于當(dāng)已存儲索引號的bq達到所述預(yù)設(shè)數(shù)量時,合并所述sfq和全部bq各自存儲的索引號對應(yīng)的小文件;

      存儲子模塊,用于當(dāng)已存儲索引號的bq未達到所述預(yù)設(shè)數(shù)量時,將當(dāng)前時刻的所述sfq存儲的索引號存儲至對應(yīng)的一個bq。

      可選的,該裝置還包括:

      分類存儲模塊,用于基于序列文件技術(shù),將用戶上傳的小文件的所述索引號存儲至所述sfq;

      發(fā)送模塊,用于所述sfq存儲的所述索引號的數(shù)量達到第二閾值時,發(fā)送所述隊列滿信號。

      可選的,所述接收模塊,包括:

      識別子模塊,用于識別接收到的信號;若所述信號為所述隊列滿信號,向所述計算模塊發(fā)送第一啟動信號;若所述信號為所述時間到信號,則向計算子模塊發(fā)送第二啟動信號;

      所述計算子模塊,用于通過所述系統(tǒng)負載預(yù)測算法計算所述負載;

      第二判斷子模塊,用于判斷所述負載是否小于所述第一閾值;

      第二合并子模塊,用于當(dāng)所述負載小于所述第一閾值時,合并全部bq各自存儲的索引號對應(yīng)的小文件。

      本發(fā)明所提供的一種云存儲中小文件的合并方法,包括:接收sfq發(fā)送的隊列滿信號;通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載;判斷所述負載是否小于第一閾值;若否,則將當(dāng)前時刻的所述sfq存儲的小文件的索引號存儲至對應(yīng)的一個bq;其中,每個bq存儲各自對應(yīng)的一個時刻的所述sfq的索引號;若是,則合并所述sfq存儲的索引號對應(yīng)的小文件,或合并所述sfq和全部bq各自存儲的索引號對應(yīng)的小文件;

      可見,本發(fā)明通過接收sfq發(fā)送的隊列滿信號,可以利用sfq(sequencefilequeue,序列文件隊列)存儲序列文件技術(shù)下的小文件的索引號;通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載,可以對云存儲系統(tǒng)的負載狀況進行計算;通過當(dāng)負載小于第一閾值時,合并sfq存儲的索引號對應(yīng)的小文件,或合并sfq和全部bq(backupqueue,備用隊列)各自存儲的索引號對應(yīng)的小文件,可以在系統(tǒng)負載不高的情況下,利用序列文件技術(shù)將sfq或每個bq存儲的全部索引號各自對應(yīng)的小文件合并成一個大文件,實現(xiàn)了系統(tǒng)的負載均衡并提高了系統(tǒng)性能,優(yōu)化了小文件存儲效率,提升了用戶體驗。此外,本發(fā)明還提供了云存儲中小文件的合并裝置,同樣具有上述有益效果。

      附圖說明

      為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。

      圖1為本發(fā)明實施例所提供的一種云存儲中小文件的合并方法的流程圖;

      圖2為本發(fā)明實施例所提供的另一種云存儲中小文件的合并方法的流程圖;

      圖3為本發(fā)明實施例所提供的另一種云存儲中小文件的合并方法的處理流程示意圖;

      圖4為本發(fā)明實施例所提供的一種云存儲中小文件的合并裝置的結(jié)構(gòu)圖。

      具體實施方式

      為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

      請參考圖1,圖1為本發(fā)明實施例所提供的一種云存儲中小文件的合并方法的流程圖。該方法可以包括:

      步驟101:接收sfq發(fā)送的隊列滿信號。

      其中,隊列滿信號可以為sfq存儲的小文件的索引號的數(shù)量達到可合并的閾值時發(fā)送的信號。對于隊列滿信號的具體內(nèi)容,也就是sfq發(fā)送的內(nèi)容,可以由設(shè)計人員自行設(shè)置,本實施例對此不做任何限制。

      可以理解的是,本實施例所提供的方法可以云存儲系統(tǒng)中控制小文件進行合并的控制器所執(zhí)行的方法,還可以在本實施例所提供的方法的基礎(chǔ)上加入云存儲系統(tǒng)中其他模塊執(zhí)行的步驟,如接收模塊基于序列文件技術(shù),將用戶上傳的小文件的索引號存儲至sfq和sfq模塊當(dāng)sfq存儲的索引號的數(shù)量達到第二閾值時,發(fā)送隊列滿信號。本實施例對此不做任何限制。

      需要說明的是,本實施例所提供的方法可以為控制器只接收隊列滿信號對小文件進行合并,從而達到優(yōu)化小文件存儲效率的目的;還可以為接收隊列滿信號和時間到信號對小文件進行合并,也就是云存儲系統(tǒng)中還包括按預(yù)設(shè)時間間隔向控制器發(fā)送時間到信號的定時器,從而進一步提高云存儲系統(tǒng)的負載均衡。本實施例對此不做任何限制。

      步驟102:通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載。

      其中,系統(tǒng)負載預(yù)測算法可以為基于層次分析法(analytichierarchyprocess,ahp)的系統(tǒng)負載預(yù)測算法,也可以為其他算法,只要可以通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載,對于系統(tǒng)負載預(yù)測算法的具體內(nèi)容和類型,本實施例不做任何限制。

      可以理解的是,只要可以計算出云存儲系統(tǒng)的負載,對于通過系統(tǒng)負載預(yù)測算法計算云存儲系統(tǒng)的負載的具體方式,本實施例不做任何限制。

      步驟103:判斷負載是否小于第一閾值;若否,則進入步驟104;若是,則進入步驟105。

      其中,第一閾值可以為設(shè)計人員自行設(shè)置的數(shù)值,當(dāng)云存儲系統(tǒng)負載達到該數(shù)值時,證明云存儲的負載較高。對于第一閾值的具體數(shù)值的設(shè)置,本實施例不做任何限制。

      步驟104:將當(dāng)前時刻的sfq存儲的小文件的索引號存儲至對應(yīng)的一個bq;其中,每個bq存儲各自對應(yīng)的一個時刻的sfq的索引號。

      其中,本步驟的目的可以為在系統(tǒng)的負載達到第一閾值時,將當(dāng)前時刻的sfq存儲的索引號放到一個bq,避免在系統(tǒng)負載較高時,進行小文件合并的步驟。

      可以理解的是,云存儲系統(tǒng)中可以為每個用戶建立一個sfq和多個bq,每個bq存儲的是不同時刻的sfq存儲的多個小文件的索引號。發(fā)送存儲滿信號的sfq或每個bq存儲的多個索引號對應(yīng)的多個小文件可以為合并為一個大文件。

      需要說明的是,本步驟中將sfq存儲的索引號存儲至對應(yīng)的一個bq,可以為將sfq存儲的索引號存儲至建立好的一個未存儲索引號的bq,也可以為將sfq存儲的索引號存儲至新建的一個bq,本實施例對此不受任何限制。

      優(yōu)選的,為了避免系統(tǒng)中的bq數(shù)量過多,本步驟可以包括判斷已存儲索引號的bq是否達到預(yù)設(shè)數(shù)量;若已存儲索引號的bq達到預(yù)設(shè)數(shù)量,則合并sfq和全部bq各自存儲的索引號對應(yīng)的小文件;若已存儲索引號的bq為達到預(yù)設(shè)數(shù)量,則將當(dāng)前時刻的sfq存儲的索引號存儲至對應(yīng)的一個bq。本實施例對此不受任何限制。

      步驟105:合并sfq存儲的索引號對應(yīng)的小文件,或合并sfq和全部bq各自存儲的索引號對應(yīng)的小文件。

      其中,本步驟可以為合并小文件的步驟,可以根據(jù)系統(tǒng)中是否存在已存儲索引號的bq對應(yīng)合并小文件,若系統(tǒng)中不存在已存儲索引號的bq,則可以只將sfq存儲的索引號對應(yīng)的小文件合并成一個大文件;若系統(tǒng)中存在已存儲索引號的bq,則將每個已存儲索引號的bq各自存儲的索引號對應(yīng)的小文件合并成一個大文件,并將sfq存儲的索引號對應(yīng)的小文件合并成一個大文件。

      可以理解的是,對于本步驟中合并小文件的具體方式,可以為將sfq存儲的索引號合并為一個大文件的索引號,并將每個索引號對應(yīng)的小文件的內(nèi)容合并成一個大文件的內(nèi)容,也可以為其他方式,只要可以將sfq或每個bq存儲的索引號對應(yīng)的小文件合并成一個大文件,對于具體的合并方式,本實施例不做任何限制。

      本實施例中,本發(fā)明實施例通過接收sfq發(fā)送的隊列滿信號,可以利用sfq存儲序列文件技術(shù)下的小文件的索引號;通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載,可以對云存儲系統(tǒng)的負載狀況進行計算;通過當(dāng)負載小于第一閾值時,合并sfq存儲的索引號對應(yīng)的小文件,或合并sfq和全部bq各自存儲的索引號對應(yīng)的小文件,可以在系統(tǒng)負載不高的情況下,利用序列文件技術(shù)將sfq或每個bq存儲的全部索引號各自對應(yīng)的小文件合并成一個大文件,實現(xiàn)了系統(tǒng)的負載均衡并提高了系統(tǒng)性能,優(yōu)化了小文件存儲效率,提升了用戶體驗。

      請參考圖2和圖3,圖2為本發(fā)明實施例所提供的另一種云存儲中小文件的合并方法的流程圖;圖3為本發(fā)明實施例所提供的另一種云存儲中小文件的合并方法的處理流程示意圖。該方法可以包括:

      步驟201:基于序列文件技術(shù),將用戶上傳的小文件的索引號存儲至sfq。

      其中,序列文件(sequencefile)是hdfs提供的一種二進制文件技術(shù),這種二進制文件直接將<key,value>對序列化到文件,文件序列化時可實現(xiàn)基于記錄或數(shù)據(jù)塊的壓縮。在云存儲系統(tǒng)中,對二進制文件采用sequencefile技術(shù)將小文件合并為大文件,以小文件的索引號為key,內(nèi)容為value的形式進行合并,合并的同時實現(xiàn)基于數(shù)據(jù)塊的壓縮,這樣,在節(jié)省名稱節(jié)點內(nèi)存空間的同時也節(jié)省了數(shù)據(jù)節(jié)點的磁盤空間。

      具體的,在云存儲系統(tǒng)中,本實施例所提供的方法的處理流程可以如圖3所示。為提高對小文件的處理效率,云存儲系統(tǒng)為可以每個用戶建立了3種隊列:第1種可以為序列文件隊列(sequencefilequeue,sfq),第2種可以為序列文件操作隊列(sequencefileoperationqueue,sfoq),第3種可以為備用隊列(backupqueue,bq)。其中,sfq用于小文件的合并,sfoq用于對合并后小文件的操作,bq用于操作的小文件數(shù)超過sfq或sfoq長度的情況。3種隊列的長度可以一致,對于隊列長度的具體數(shù)值,也就是每個隊列存儲索引號的數(shù)量可以由設(shè)計人員根據(jù)實用場景和用戶需求自行設(shè)置,本實施例對此不做任何限制。

      需要說明的是,本步驟可以如圖3所示,云存儲系統(tǒng)的服務(wù)器接收用戶上傳的本地的文件(過程1),對該文件的類型進行判斷(過程2),如果是小文件,則將該文件的索引號存儲至sfq中(過程3)。對于本步驟中的具體過程,如對文件類型判斷的具體方式,可以使用與現(xiàn)有技術(shù)相同或相似的方式,也可以使用其他方式,只要可以將接收到的小文件的索引號存儲至每個用戶對應(yīng)的sfq中,對于具體的存儲過程,本實施例不做任何限制。

      步驟202:sfq存儲的索引號的數(shù)量達到第二閾值時,發(fā)送隊列滿信號。

      其中,第二閾值可以為合并成一個大文件的小文件的數(shù)量,對于該數(shù)量的具體數(shù)值的設(shè)置,可以由設(shè)計人員根據(jù)實用場景和用戶需求自行設(shè)置,本實施例對此不受任何限制。

      具體的,本步驟可以如圖3中虛線a所示,當(dāng)sfq存儲的索引號的數(shù)量達到第二閾值時,也就是sfq滿時,向控制器發(fā)送隊列滿信號(qf信號)。

      步驟203:定時器按預(yù)設(shè)時間間隔發(fā)送時間到信號。

      其中,預(yù)設(shè)時間間隔可以為設(shè)計人員根據(jù)實用場景或用戶需求設(shè)置的判斷是否合并小文件的時間間隔,如30min。本實施例對此不做任何限制。

      具體的,本步驟可以如圖3中虛線b所示,當(dāng)定時器達到預(yù)設(shè)時間間隔的時間點時,向控制器發(fā)送時間到信號(tu信號)。

      步驟204:識別接收到的信號。

      可以理解的是,本步驟可以為控制器識別接收的信號,對于具體的識別過程和識別方式,可以由設(shè)計人員自行設(shè)置,本實施例對此不受任何限制。

      步驟205:當(dāng)信號為隊列滿信號時,通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載。

      步驟206:判斷負載是否小于第一閾值;若否,則進入步驟207;若是,則進入步驟210。

      其中,步驟205和步驟206與步驟102和步驟103相似,在此不再贅述。

      可以理解的是,本步驟可以如圖3所示,控制器對系統(tǒng)負載進行計算(過程4.2),決定是否進行小文件的合并(過程5)。

      步驟207:判斷已存儲索引號的bq是否達到預(yù)設(shè)數(shù)量;若是,則進入步驟208;若否,則進入步驟209。

      可以理解的是,為了避免系統(tǒng)中已存儲索引號的bq的數(shù)量過多,可以通過本步驟對系統(tǒng)中已存儲索引號的bq的數(shù)量是否達到預(yù)設(shè)數(shù)量進行判斷,然后通過步驟208,在已存儲索引號的bq的數(shù)量達到預(yù)設(shè)數(shù)量時,合并sfq和全部bq各自存儲的索引號對應(yīng)的小文件。

      需要說明的是,對于預(yù)設(shè)數(shù)量的數(shù)值的設(shè)定,可以由設(shè)計人員根據(jù)實用場景和用戶需求自行設(shè)置,本實施例對此不受任何限制。

      具體的,本步驟可以如圖3所示,控制器讀取sfq和bq的相關(guān)信息(過程4.1),決定是否進行小文件的合并(過程5)。

      步驟208:合并sfq和全部bq各自存儲的索引號對應(yīng)的小文件。

      可以理解的是,本步驟的目的是將云存儲系統(tǒng)中,該用戶上傳的全部可合并的小文件合并成對應(yīng)的大文件。

      步驟209:將當(dāng)前時刻的sfq存儲的索引號存儲至對應(yīng)的一個bq。

      其中,本步驟的目的是在系統(tǒng)的負載較高且系統(tǒng)中的bq數(shù)量不多時,通過本步驟避免對小文件的合并。

      步驟210:合并sfq存儲的索引號對應(yīng)的小文件,或合并sfq和全部bq各自存儲的索引號對應(yīng)的小文件。

      其中,本步驟與步驟105相似,在此不再贅述。

      步驟211:當(dāng)信號為時間到信號時,通過系統(tǒng)負載預(yù)測算法計算負載。

      步驟212:判斷負載是否小于第一閾值;若是,則進入步驟213;若否,則結(jié)束本次流程。

      其中,步驟211和步驟212與步驟102和步驟103相似,在此不再贅述。

      步驟213:合并全部bq各自存儲的索引號對應(yīng)的小文件。

      可以理解的是,本步驟的目的是通過定時器發(fā)送的時間到信號,在sfq存儲的索引號未達到第二閾值且系統(tǒng)負載不高時,對系統(tǒng)中已存儲索引號的bq對應(yīng)的小文件進行合并,進一步保證系統(tǒng)的負載均衡。

      本實施例中,本發(fā)明通過判斷已存儲索引號的bq是否達到預(yù)設(shè)數(shù)量,可以避免云存儲系統(tǒng)中已存儲索引號的bq的數(shù)量過多;通過當(dāng)信號為時間到信號時,通過系統(tǒng)負載預(yù)測算法計算負載,可以在sfq存儲的索引號未達到第二閾值且系統(tǒng)負載不高時,對系統(tǒng)中已存儲索引號的bq對應(yīng)的小文件進行合并,進一步保證了系統(tǒng)的負載均衡。

      請參考圖4,圖4為本發(fā)明實施例所提供的一種云存儲中小文件的合并裝置的結(jié)構(gòu)圖。該裝置可以包括:

      接收模塊100,用于接收sfq發(fā)送的隊列滿信號;

      計算模塊200,用于通過系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載;

      判斷模塊300,用于判斷負載是否小于第一閾值;

      存儲模塊400,用于當(dāng)負載不小于第一閾值時,將當(dāng)前時刻的sfq存儲的小文件的索引號存儲至對應(yīng)的一個bq;其中,每個bq存儲各自對應(yīng)的一個時刻的sfq的索引號;

      合并模塊500,用于當(dāng)負載小于第一閾值時,合并sfq存儲的索引號對應(yīng)的小文件,或合并sfq和全部bq各自存儲的索引號對應(yīng)的小文件。

      可選的,存儲模塊400,可以包括:

      第一判斷子模塊,用于判斷已存儲索引號的bq是否達到預(yù)設(shè)數(shù)量;

      第一合并子模塊,用于當(dāng)已存儲索引號的bq達到預(yù)設(shè)數(shù)量時,合并sfq和全部bq各自存儲的索引號對應(yīng)的小文件;

      存儲子模塊,用于當(dāng)已存儲索引號的bq未達到預(yù)設(shè)數(shù)量時,將當(dāng)前時刻的sfq存儲的索引號存儲至對應(yīng)的一個bq。

      可選的,該裝置還可以包括:

      分類存儲模塊,用于基于序列文件技術(shù),將用戶上傳的小文件的索引號存儲至sfq;

      發(fā)送模塊,用于sfq存儲的索引號的數(shù)量達到第二閾值時,發(fā)送隊列滿信號。

      可選的,接收模塊100,可以包括:

      識別子模塊,用于識別接收到的信號;若信號為隊列滿信號,向計算模塊發(fā)送第一啟動信號;若信號為時間到信號,則向計算子模塊發(fā)送第二啟動信號;

      計算子模塊,用于通過系統(tǒng)負載預(yù)測算法計算負載;

      第二判斷子模塊,用于判斷負載是否小于第一閾值;

      第二合并子模塊,用于當(dāng)負載小于第一閾值時,合并全部bq各自存儲的索引號對應(yīng)的小文件。

      本實施例中,本發(fā)明通過接收模塊100接收sfq發(fā)送的隊列滿信號,可以利用sfq存儲序列文件技術(shù)下的小文件的索引號;通過計算模塊200利用系統(tǒng)負載預(yù)測算法計算系統(tǒng)的負載,可以對云存儲系統(tǒng)的負載狀況進行計算;通過合并模塊500當(dāng)負載小于第一閾值時,合并sfq存儲的索引號對應(yīng)的小文件,或合并sfq和全部bq各自存儲的索引號對應(yīng)的小文件,可以在系統(tǒng)負載不高的情況下,利用序列文件技術(shù)將sfq或每個bq存儲的全部索引號各自對應(yīng)的小文件合并成一個大文件,實現(xiàn)了系統(tǒng)的負載均衡并提高了系統(tǒng)性能,優(yōu)化了小文件存儲效率,提升了用戶體驗。

      說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。

      專業(yè)人員還可以進一步意識到,結(jié)合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機軟件或者二者的結(jié)合來實現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認為超出本發(fā)明的范圍。

      結(jié)合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實施。軟件模塊可以置于隨機存儲器(ram)、內(nèi)存、只讀存儲器(rom)、電可編程rom、電可擦除可編程rom、寄存器、硬盤、可移動磁盤、cd-rom、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲介質(zhì)中。

      以上對本發(fā)明所提供的云存儲中小文件的合并方法及裝置進行了詳細介紹。本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進行若干改進和修飾,這些改進和修飾也落入本發(fā)明權(quán)利要求的保護范圍內(nèi)。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1