欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于分布式文件系統(tǒng)的文件刪除方法和系統(tǒng)與流程

文檔序號:11134195閱讀:738來源:國知局
一種基于分布式文件系統(tǒng)的文件刪除方法和系統(tǒng)與制造工藝

本發(fā)明涉及存儲技術領域,特別是涉及一種基于分布式文件系統(tǒng)的文件刪除方法和系統(tǒng)。



背景技術:

隨著信息技術的發(fā)展,人們的工作和生活中的很多方面都離不開存儲系統(tǒng)。

人們在應用存儲系統(tǒng)時,常常需要刪除一些文件,刪除文件一般分為兩個過程,先刪除文件元數(shù)據(jù),再釋放文件所占用的空間。其中,刪除元數(shù)據(jù)的操作占用系統(tǒng)資源較少,執(zhí)行速度較快,釋放文件空間的操作占用系統(tǒng)資源較多,執(zhí)行速度較慢,在需要刪除的文件較大時尤為明顯。所以,一般在存儲系統(tǒng)的實現(xiàn)中,會在完成元數(shù)據(jù)刪除后,立即向用戶返回刪除成功的通知信息,再在后臺逐塊釋放文件所占用的空間。然而,盡管釋放文件空間的操作在后臺執(zhí)行,但是這種釋放文件所占空間的操作仍然會占用大量的系統(tǒng)資源,如占用CPU、內(nèi)存、網(wǎng)絡和磁盤資源,會降低存儲系統(tǒng)的整體性能。

因此,如何對文件進行刪除時,避免刪除文件釋放文件空間所帶來的存儲系統(tǒng)資源消耗和性能消耗,從而提高存儲系統(tǒng)的性能,是本領域技術人員目前需要解決的技術問題。



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

本發(fā)明的目的是提供一種基于分布式文件系統(tǒng)的文件刪除方法和系統(tǒng),可以對文件進行刪除時,避免刪除文件釋放文件空間所帶來的存儲系統(tǒng)資源消耗和性能消耗,從而提高存儲系統(tǒng)的性能。

為解決上述技術問題,本發(fā)明提供了如下技術方案:

一種基于分布式文件系統(tǒng)的文件刪除方法,包括:

將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài);

判斷當前所述分布式文件系統(tǒng)是否處于寫入第二文件狀態(tài);

若是,則判斷當前是否存在處于刪除保留狀態(tài)的第一文件;

若是,則控制所述第二文件重用所述處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。

優(yōu)選地,在將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài)之前,還包括:預先獲取刪除文件的指定類型;判斷分布式文件系統(tǒng)中被刪除的第一文件的類型是否為所述指定類型;若是,則執(zhí)行將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài)的步驟;

其中,在判斷當前是否存在處于刪除保留狀態(tài)的第一文件之前,還包括:判斷所述第二文件的類型是否為所述指定類型;若是,則執(zhí)行判斷當前是否存在處于刪除保留狀態(tài)的第一文件的步驟。

優(yōu)選地,所述將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài),包括:

將所述分布式文件系統(tǒng)中被刪除的第一文件移動至預設位置;

重置所述第一文件的元數(shù)據(jù),將所述第一文件的大小設置為0;

保留所述第一文件的數(shù)據(jù)分布信息。

優(yōu)選地,所述控制所述第二文件重用所述處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,包括:

判斷所述第二文件所占空間是否小于該第一文件所占空間;

若是,則控制所述第二文件重用該第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,占用該第一文件的存儲空間,并將該第一文件原存儲空間在所述第二文件寫入完成后剩余的空間進行釋放;

若否,則控制所述第二文件重用該第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,占用該第一文件的全部存儲空間,并將所述第二文件占用該第一文件的全部存儲空間后剩余的文件內(nèi)容存儲在空閑存儲空間。

優(yōu)選地,所述保留所述第一文件的數(shù)據(jù)分布信息,包括:

保留所述第一文件的將數(shù)據(jù)存儲至對應存儲空間的映射信息。

一種基于分布式文件系統(tǒng)的文件刪除系統(tǒng),包括:

刪除文件處理模塊,用于將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài);

第一判斷模塊,用于判斷當前所述分布式文件系統(tǒng)是否處于寫入第二文件狀態(tài);

第二判斷模塊,用于在所述第一判斷模塊判定當前所述分布式文件系統(tǒng)處于寫入第二文件狀態(tài)時,判斷當前是否存在處于刪除保留狀態(tài)的第一文件;

寫入文件處理模塊,用于在所述第二判斷模塊判定當前存在處于刪除保留狀態(tài)的第一文件時,控制所述第二文件重用所述處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。

優(yōu)選地,還包括:

文件類型獲取模塊,用于響應用戶的操作,預先獲取刪除文件的指定類型;

第三判斷模塊,用于判斷分布式文件系統(tǒng)中被刪除的第一文件的類型是否為所述指定類型,并在判定所述第一文件的類型為所述指定類型時控制所述刪除文件處理模塊動作;

第四判斷模塊,用于判斷所述第二文件的類型是否為所述指定類型,并在判定所述第二文件的類型為所述指定類型時,控制所述第二判斷模塊動作。

優(yōu)選地,所述刪除文件處理模塊包括:

刪除文件移動單元,用于將所述第一文件移動至預設位置;

元數(shù)據(jù)重置單元,用于重置所述第一文件的元數(shù)據(jù),將所述第一文件的大小設置為0;

數(shù)據(jù)分布保留單元,用于保留所述第一文件的數(shù)據(jù)分布信息。

優(yōu)選地,所述寫入文件處理模塊包括:

第一判斷單元,用于判斷所述第二文件所占空間是否小于該第一文件所占空間;

第一寫入文件處理單元,用于在所述第一判斷單元判定所述第二文件所占空間小于該第一文件所占空間時,控制所述第二文件重用該第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,占用該第一文件的存儲空間,并將該第一文件原存儲空間在所述第二文件寫入完成后剩余的空間進行釋放;

第二寫入文件處理單元,用于在所述第一判斷單元判定所述第二文件所占空間不小于該第一文件所占空間時,控制所述第二文件重用該第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,占用該第一文件的全部存儲空間,并將所述第二文件占用該第一文件的全部存儲空間后剩余的文件內(nèi)容存儲在空閑存儲空間。

與現(xiàn)有技術相比,上述技術方案具有以下優(yōu)點:

本發(fā)明所提供的一種基于分布式文件系統(tǒng)的文件刪除方法,包括:將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài);判斷當前分布式文件系統(tǒng)是否處于寫入第二文件狀態(tài);若是,則判斷當前是否存在處于刪除保留狀態(tài)的第一文件;若是,則控制第二文件重用處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。在分布式文件系統(tǒng)中,在刪除文件時,對該刪除的文件保留元數(shù)據(jù)及數(shù)據(jù)分布,以留給后續(xù)的寫入文件使用,無需真正釋放該刪除文件所占用的空間,當寫入新文件時,通過重用該刪除文件的元數(shù)據(jù)和數(shù)據(jù)分布的方式,使寫入的新文件使用刪除文件的空間,從而避免了釋放刪除文件空間所帶來的系統(tǒng)資源消耗和性能消耗,以達到提升系統(tǒng)性能的目的。

附圖說明

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

圖1為本發(fā)明一種具體實施方式所提供的一種基于分布式文件系統(tǒng)的文件刪除方法流程圖;

圖2為本發(fā)明一種具體實施方式所提供的一種基于分布式文件系統(tǒng)的文件刪除系統(tǒng)結構示意圖。

具體實施方式

本發(fā)明的核心是提供一種基于分布式文件系統(tǒng)的文件刪除方法和系統(tǒng),可以對文件進行刪除時,避免刪除文件釋放文件空間所帶來的存儲系統(tǒng)資源消耗和性能消耗,從而提高存儲系統(tǒng)的性能。

為了使本發(fā)明的上述目的、特征和優(yōu)點能夠更為明顯易懂,下面結合附圖對本發(fā)明的具體實施方式做詳細的說明。

在以下描述中闡述了具體細節(jié)以便于充分理解本發(fā)明。但是本發(fā)明能夠以多種不同于在此描述的其它方式來實施,本領域技術人員可以在不違背本發(fā)明內(nèi)涵的情況下做類似推廣。因此本發(fā)明不受下面公開的具體實施的限制。

請參考圖1,圖1為本發(fā)明一種具體實施方式所提供的一種基于分布式文件系統(tǒng)的文件刪除方法流程圖。

本發(fā)明的一種具體實施方式提供了一種基于分布式文件系統(tǒng)的文件刪除方法,包括:

S11:將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài)。

在本發(fā)明的一種實施方式中,將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài),包括:將分布式文件系統(tǒng)中被刪除的第一文件移動至預設位置,即直接將該第一文件移動到一個特殊的位置(如回收站);重置第一文件的元數(shù)據(jù),將第一文件的大小設置為0,在本步驟中,不刪除該第一文件的元數(shù)據(jù),而是以重置元數(shù)據(jù)代替,重置元數(shù)據(jù)將文件大小設置為0;保留第一文件的數(shù)據(jù)分布信息。

其中,保留第一文件的數(shù)據(jù)分布信息,包括:保留第一文件的將數(shù)據(jù)存儲至對應存儲空間的映射信息。例如,在一文件的存儲過程中,將該文件按大小切分成不同的數(shù)據(jù)塊,并按照一定的規(guī)則將各數(shù)據(jù)庫映射在不同的分區(qū),并按照一定的規(guī)則進行映射,最終將該文件的數(shù)據(jù)存儲在磁盤的不同分組中。而保留第一文件的數(shù)據(jù)分布信息就是保留第一文件存儲過程中的各種映射關系信息,當后續(xù)寫入新文件時,將新文件按照第一文件的存儲映射關系進行存儲,覆蓋第一文件的數(shù)據(jù),以占用第一文件的存儲空間。

S12:判斷當前分布式文件系統(tǒng)是否處于寫入第二文件狀態(tài)。即判斷當前是否寫入新的文件。

S13:若是,則判斷當前是否存在處于刪除保留狀態(tài)的第一文件。

在實際應用中,通常情況下并不是刪除一個第一文件,后續(xù)就開始寫入一個第二文件。在一段時間內(nèi)可能會刪除多個第一文件,有時可能會遇到寫入的第二文件的數(shù)量大于刪除的第一文件的數(shù)量,因此,此時在寫入一個第二文件時,首先判斷一下當前是否存在處于刪除保留狀態(tài)的第一文件,以確定新寫入的第二文件的寫入方式。

S14:若是,則控制第二文件重用處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。

當當前具有處于刪除保留狀態(tài)的第一文件時,控制第二文件重用處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。其中,若有多個處于刪除保留狀態(tài)的第一文件,可以根據(jù)實際情況選擇重用的第一文件,如可以按照各第一文件刪除的先后順序,或者選擇和該第二文件所占用的空間大小最相近的第一文件來進行空間重用。

在本發(fā)明的一種實施方式中,控制第二文件重用處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,包括:

判斷第二文件所占空間是否小于該第一文件所占空間。

若是,則控制第二文件重用該第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,占用該第一文件的存儲空間,并將該第一文件原存儲空間在第二文件寫入完成后剩余的空間進行釋放。

當?shù)诙募嫉目臻g小于該第一文件所占空間時,將第二文件寫入完成時,第一文件的原存儲空間仍有剩余,為了有效利用剩余空間,此時將剩余的空間進行釋放。

若否,則控制第二文件重用該第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,占用該第一文件的全部存儲空間,并將第二文件占用該第一文件的全部存儲空間后剩余的文件內(nèi)容存儲在空閑存儲空間。

當?shù)诙募嫉目臻g等于第一文件所占的空間時,這是最理想的狀態(tài),只需將第二文件完全占用第一文件的原空間即可。但是有時第二文件所占的空間大于第一文件所占空間,當?shù)诙募耆加昧说谝晃募脑臻g后,第二文件仍未寫入完成,此時需要調(diào)用其他空閑空間以供第二文件繼續(xù)寫入,直至第二文件寫入完成。

在本發(fā)明的上述各實施方式中,被刪除文件的元數(shù)據(jù)和數(shù)據(jù)分布在該文件刪除時并不真正刪除,而是留至在新文件寫入時重用,以保證新文件可以寫入到該刪除文件原有的文件空間,取消實際釋放存儲空間的操作,大大降低刪除文件時釋放該文件的存儲空間對系統(tǒng)資源的消耗。

此外,在寫入新的文件時,刪除文件的元數(shù)據(jù)已經(jīng)將文件大小設置為0,所以系統(tǒng)會認為當前是新寫入數(shù)據(jù),而不是修改寫,從而避免在新文件寫入過程中讀取原有數(shù)據(jù)。

在本發(fā)明的一種實施方式中,在將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài)之前,還包括:預先獲取刪除文件的指定類型;判斷分布式文件系統(tǒng)中被刪除的第一文件的類型是否為所述指定類型;若是,則執(zhí)行將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài)的步驟;

其中,在判斷當前是否存在處于刪除保留狀態(tài)的第一文件之前,還包括:判斷所述第二文件的類型是否為所述指定類型;若是,則執(zhí)行判斷當前是否存在處于刪除保留狀態(tài)的第一文件的步驟。

在本實施方式中,用戶預先指定使用本文件刪除方法的文件的特征,即獲取用戶指定的刪除文件的指定類型。以便獲取更好的準確性和效率。如用戶想要刪除一個文件“file1.mkv”時,可以指定“.mkv”為指定類型的文件。當被刪除的文件的類型為指定類型時才在該文件被刪除時置于刪除保留狀態(tài)。當然指定類型可以是一個也可以是多個指定的類型,即可根據(jù)不同的指定類型對處于刪除保留狀態(tài)的各第一文件進行分類。當分布式系統(tǒng)處于寫入第二文件狀態(tài)時,判斷該第二文件是否為上述指定類型,若是,則在存在處于刪除保留狀態(tài)的第一文件的情況下,則控制該第二文件重用處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。當然,若設置了多個指定類型,則需要判定該第二文件屬于哪個指定類型,在后續(xù)寫入過程中,控制該第二文件優(yōu)先重用和該第二文件指定類型相同的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。這是由于當?shù)诙募偷谝晃募奈募愋拖嗤瑫r,可以提高其重用的效率。

請參考圖2,圖2為本發(fā)明一種具體實施方式所提供的一種基于分布式文件系統(tǒng)的文件刪除系統(tǒng)結構示意圖。

相應地,本發(fā)明一種實施方式還提供了一種基于分布式文件系統(tǒng)的文件刪除系統(tǒng),包括:

刪除文件處理模塊1,用于將分布式文件系統(tǒng)中被刪除的第一文件置為刪除保留狀態(tài);

第一判斷模塊2,用于判斷當前分布式文件系統(tǒng)是否處于寫入第二文件狀態(tài);

第二判斷模塊3,用于在第一判斷模塊判定當前分布式文件系統(tǒng)處于寫入第二文件狀態(tài)時,判斷當前是否存在處于刪除保留狀態(tài)的第一文件;

寫入文件處理模塊4,用于在第二判斷模塊判定當前存在處于刪除保留狀態(tài)的第一文件時,控制第二文件重用處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。

在本實施方式中,在刪除文件時,對該刪除的文件保留元數(shù)據(jù)及數(shù)據(jù)分布,以留給后續(xù)的新寫入文件使用,無需真正釋放該刪除文件所占用的空間,當寫入同類型的新文件時,通過重用該刪除文件的元數(shù)據(jù)和數(shù)據(jù)分布的方式,使寫入的新文件使用刪除文件的空間,從而避免了釋放刪除文件空間所帶來的系統(tǒng)資源消耗和性能消耗,以達到提升系統(tǒng)性能的目的。

進一步地,該系統(tǒng)還包括:文件類型獲取模塊,用于響應用戶的操作,預先獲取刪除文件的指定類型;

第三判斷模塊,用于判斷分布式文件系統(tǒng)中被刪除的第一文件的類型是否為所述指定類型,并在判定所述第一文件的類型為所述指定類型時控制所述刪除文件處理模塊動作;

第四判斷模塊,用于判斷所述第二文件的類型是否為所述指定類型,并在判定所述第二文件的類型為所述指定類型時,控制所述第二判斷模塊動作。

在本實施方式中,文件類型獲取模塊、第三判斷模塊和第四判斷模塊的設置,使得當被刪除的第一文件的類型為指定類型時才在該第一文件被刪除時置于刪除保留狀態(tài)。當然指定類型可以是一個也可以是多個指定的類型,即可根據(jù)不同的指定類型對處于刪除保留狀態(tài)的各第一文件進行分類。當分布式系統(tǒng)處于寫入第二文件狀態(tài)時,判斷該第二文件是否為上述指定類型,若是,則在存在處于刪除保留狀態(tài)的第一文件的情況下,則控制該第二文件重用處于刪除保留狀態(tài)的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。當然,若設置了多個指定類型,則需要判定該第二文件屬于哪個指定類型,在后續(xù)寫入過程中,控制該第二文件優(yōu)先重用和該第二文件指定類型相同的第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息。這是由于當?shù)诙募偷谝晃募奈募愋拖嗤瑫r,可以提高其重用的效率。

進一步地,刪除文件處理模塊包括:刪除文件移動單元,用于將第一文件移動至預設位置;元數(shù)據(jù)重置單元,用于重置第一文件的元數(shù)據(jù),將第一文件的大小設置為0;數(shù)據(jù)分布保留單元,用于保留第一文件的數(shù)據(jù)分布信息。

在后續(xù)寫入新的指定類型的文件時,刪除文件的元數(shù)據(jù)已經(jīng)將文件大小設置為0,所以系統(tǒng)會認為當前是新寫入數(shù)據(jù),而不是修改寫,從而避免在新文件寫入過程中讀取原有數(shù)據(jù)。

在本發(fā)明的一種實施方式中,寫入文件處理模塊包括:第一判斷單元,用于判斷第二文件所占空間是否小于該第一文件所占空間;第一寫入文件處理單元,用于在第一判斷單元判定第二文件所占空間小于該第一文件所占空間時,控制第二文件重用該第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,占用該第一文件的存儲空間,并將該第一文件原存儲空間在第二文件寫入完成后剩余的空間進行釋放;第二寫入文件處理單元,用于在第一判斷單元判定第二文件所占空間不小于該第一文件所占空間時,控制第二文件重用該第一文件的元數(shù)據(jù)和數(shù)據(jù)分布信息,占用該第一文件的全部存儲空間,并將第二文件占用該第一文件的全部存儲空間后剩余的文件內(nèi)容存儲在空閑存儲空間。

當?shù)诙募嫉目臻g小于該第一文件所占空間時,將第二文件寫入完成時,第一文件的原存儲空間仍有剩余,為了有效利用剩余空間,此時將剩余的空間進行釋放。

當?shù)诙募嫉目臻g等于第一文件所占的空間時,這是最理想的狀態(tài),只需將第二文件完全占用第一文件的原空間即可。但是有時第二文件所占的空間大于第一文件所占空間,當?shù)诙募耆加昧说谝晃募脑臻g后,第二文件仍未寫入完成,此時需要調(diào)用其他空閑空間以供第二文件繼續(xù)寫入,直至第二文件寫入完成。

綜上所述,本發(fā)明所提供的基于分布式文件系統(tǒng)的文件刪除方法和系統(tǒng),在刪除文件時,被刪除文件的元數(shù)據(jù)和數(shù)據(jù)分布在該文件刪除時并不真正刪除,而是用于在新文件寫入時重用,以保證新文件可以寫入到該刪除文件原有的文件空間,取消實際釋放存儲空間的操作,大大降低刪除文件時釋放該文件的存儲空間對系統(tǒng)資源的消耗。

以上對本發(fā)明所提供的一種基于分布式文件系統(tǒng)的文件刪除方法和系統(tǒng)進行了詳細介紹。本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進行若干改進和修飾,這些改進和修飾也落入本發(fā)明權利要求的保護范圍內(nèi)。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
阳原县| 石楼县| 平顶山市| 辉南县| 沿河| 临海市| 河曲县| 盘山县| 南澳县| 南宁市| 青阳县| 榆林市| 新营市| 剑河县| 壤塘县| 武夷山市| 蓬莱市| 沾化县| 肇庆市| 边坝县| 门源| 宝清县| 浮山县| 常宁市| 腾冲县| 共和县| 洛隆县| 米林县| 睢宁县| 西乌珠穆沁旗| 鹰潭市| 弋阳县| 漳浦县| 中牟县| 固始县| 荣成市| 溆浦县| 青阳县| 张家港市| 平远县| 丰顺县|