專(zhuān)利名稱(chēng):一種備份文件瀏覽系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域,具體地說(shuō)是一種備份文件瀏覽系統(tǒng)。
背景技術(shù):
隨著我國(guó)信息化建設(shè)的深入,數(shù)據(jù)量以指數(shù)級(jí)增漲,數(shù)據(jù)已成為企業(yè)的重要財(cái)富。數(shù)據(jù)丟失已成為影響企業(yè)發(fā)展的嚴(yán)重危險(xiǎn),因而,數(shù)據(jù)容災(zāi)已成為企業(yè)信息化建議中的重中之重。數(shù)據(jù)容災(zāi)的本質(zhì)即是數(shù)據(jù)備份。所謂的數(shù)據(jù)備份,即是將數(shù)據(jù)從當(dāng)前存儲(chǔ)介質(zhì)移到其它存儲(chǔ)介質(zhì),以保證在當(dāng)前存儲(chǔ)介質(zhì)損壞時(shí),可以從其它的存儲(chǔ)介質(zhì)上得到數(shù)據(jù),以保證數(shù)據(jù)不會(huì)丟失。從數(shù)據(jù)備份的粒度及數(shù)據(jù)形式上,可以分為塊級(jí)和文件級(jí):塊級(jí)是將整個(gè)分區(qū)/磁盤(pán)作為保護(hù)單位,將它們上面已經(jīng)使用的數(shù)據(jù)塊進(jìn)行備份。塊級(jí)備份不需要關(guān)心具體的備份數(shù)據(jù)形式,在它看來(lái),所有的備份數(shù)據(jù)都是數(shù)據(jù)塊;文件級(jí)備份是在文件系統(tǒng)之上,把若干個(gè)文件/文件夾作為保護(hù)對(duì)象。文件級(jí)備份需要關(guān)心具體的備份內(nèi)容,并需要給用戶提供一個(gè)視圖來(lái)進(jìn)行備份內(nèi)容的瀏覽與選取。塊級(jí)備份與文件級(jí)備份在容災(zāi)備份領(lǐng)域都有著廣泛的應(yīng)用。塊級(jí)備份主要應(yīng)用在對(duì)RP0(恢復(fù)點(diǎn)目標(biāo))和RTO(恢復(fù)時(shí)間點(diǎn)目標(biāo))要求較高的災(zāi)備應(yīng)用上;文件級(jí)備份則更為通用,可獨(dú)立作為一種災(zāi)備的應(yīng)用,也可作用一種塊級(jí)備份的輔助措施應(yīng)用于災(zāi)備領(lǐng)域。在文件級(jí)備份中,需要對(duì)已備份的數(shù)據(jù)進(jìn)行瀏覽,以便幫助用戶決定需要恢復(fù)哪些數(shù)據(jù)。瀏覽模塊應(yīng)為用戶提供備份文件的樹(shù)形結(jié)構(gòu),應(yīng)提供哪些文件在本次備份中進(jìn)行了備份,哪些文件沒(méi)有在本次備份中進(jìn)行備份。在瀏覽的時(shí)候,當(dāng)待瀏覽文件很多時(shí)(百萬(wàn)以上),通常的瀏覽方式就顯得十分緩慢,需要為此設(shè)計(jì)一種索引結(jié)構(gòu)以提高瀏覽速度。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種備份文件瀏覽系統(tǒng)。本發(fā)明的目的是按以下方式實(shí)現(xiàn)的,其核心是對(duì)備份文件列表建立索引,利用備份數(shù)據(jù)瀏覽系統(tǒng)對(duì)已備份數(shù)據(jù)進(jìn)行瀏覽,以提高備份文件的瀏覽速度,備份數(shù)據(jù)瀏覽系統(tǒng)包括:索引生成模塊,文件列表提取模塊,索引查找模塊和索引判定模塊,其中:
索引生成模塊,備份數(shù)據(jù)瀏覽系統(tǒng)通過(guò)文件列列表提取模塊獲取到備份數(shù)據(jù)中的各文件路徑及該文件中否在此次備份中,索引生成模塊以此列表作為輸入,構(gòu)建出索引內(nèi)存結(jié)構(gòu),再將索引內(nèi)存結(jié)構(gòu)寫(xiě)入索引文件中,即完成了索引文件的生成;
文件列表提取模塊用于從備份數(shù)據(jù)中提取備份文件的路徑,索引生成模塊用于生成索引數(shù)據(jù)及索引文件,索引查找模塊用于進(jìn)行索引的查找;
索引查找模塊以文件路徑作為輸入,按照樹(shù)形查找的方式,使用索引文件進(jìn)行查找。如果索引文件中有相應(yīng)的結(jié)點(diǎn),則返回該結(jié)點(diǎn)下所有的子結(jié)點(diǎn)的名字,是否是文件夾及是否聞売顯不;否則,返回空。索引判定模塊用于判定備份數(shù)據(jù)和當(dāng)前的索引文件是否一致,如果一致,則直接進(jìn)行索引查找,否則需要進(jìn)行索引生成的操作;
文件瀏覽步驟如下:
在用戶對(duì)已備份的數(shù)據(jù)進(jìn)行瀏覽時(shí),向備份數(shù)據(jù)瀏覽系統(tǒng)發(fā)送瀏覽請(qǐng)求,此瀏覽請(qǐng)求中包含用戶需要瀏覽的目錄,備份數(shù)據(jù)瀏覽系統(tǒng)需要將用戶請(qǐng)求瀏覽目錄下的子目錄及其文件返回給用戶;
備份數(shù)據(jù)瀏覽系統(tǒng)在收到瀏覽請(qǐng)求后,首先通過(guò)索引判定模塊判定是否需要生成索引文件,其具體判定方式是通過(guò)查看索引文件是否存在,如存在,則索引文件的修改日期是否大于備份數(shù)據(jù)的修改日期來(lái)判定索引文件的有效性;
如索引文件有效,則使用索引查找模塊來(lái)查找請(qǐng)求的目錄,如找到,返回此目錄下的子目錄和文件,否則返回空,如索引文件無(wú)效,則進(jìn)行索引文件生成的流程;
備份數(shù)據(jù)瀏覽系統(tǒng)通過(guò)文件列列表提取模塊獲取到備份數(shù)據(jù)中的各文件路徑及該文件中否在此次備份中,索引生成模塊以此列表作為輸入,構(gòu)建出所示的索引內(nèi)存結(jié)構(gòu),再將索引內(nèi)存結(jié)構(gòu)寫(xiě)入索引文件中,即完成了索引文件的生成。索引查找模塊以文件路徑作為輸入,按照樹(shù)形查找的方式,使用索引文件進(jìn)行查找,如果索引文件中有相應(yīng)的結(jié)點(diǎn),則返回該結(jié)點(diǎn)下所有的子結(jié)點(diǎn)的名字,是否是文件夾及是否高亮顯示;否則,返回空;
索引判定模塊判定備份數(shù)據(jù)和當(dāng)前的索引文件是否一致,如果一致,則直接進(jìn)行索引查找,否則需要重新通過(guò)索引生成模塊進(jìn)行索引生成的操作。對(duì)所備份的文件數(shù)據(jù)按其層次關(guān)系建立索引,為備份數(shù)據(jù)瀏覽提供快速的文件定位方式;
索引內(nèi)存結(jié)構(gòu),是通過(guò)順序的文件列表進(jìn)行生成;
文件數(shù)據(jù)層次關(guān)系,按照文件夾,文件夾下文件的方式進(jìn)行組織,將組織的索引數(shù)據(jù)存儲(chǔ)在唯一的索引文件中。備份數(shù)據(jù)瀏覽,按照根目錄,子目錄,目錄中文件的方式自頂向下,逐級(jí)進(jìn)行。備份數(shù)據(jù)瀏覽,在顯示目錄或文件時(shí),提供一個(gè)顯示方式的附加信息,以決定是實(shí)圖標(biāo)顯示還是虛圖標(biāo)顯示。本發(fā)明的有益效果是:備份數(shù)據(jù)瀏覽系統(tǒng)由四部份構(gòu)成,分別為索引判定模塊,文件列表提取模塊,索引生成模塊和索引查找模塊。索引判定模塊用于判定備份數(shù)據(jù)和當(dāng)前的索引文件是否一致,如果一致,則直接進(jìn)行索引查找,否則需要進(jìn)行索引生成的操作。文件列表提取模塊用于從備份數(shù)據(jù)中提取備份文件的路徑。索引生成模塊用于生成索引數(shù)據(jù)及索引文件。索引查找模塊用于進(jìn)行索引的查找。本發(fā)明的核心是對(duì)備份文件列表建立索弓丨,利用備份數(shù)據(jù)瀏覽系統(tǒng)對(duì)已備份數(shù)據(jù)進(jìn)行瀏覽,以提高備份文件的瀏覽速度。
圖1是目錄索引內(nèi)存中的組織方式;
圖2是目錄索引文件中的組織方式;
圖3是備份數(shù)據(jù)瀏覽系統(tǒng)結(jié)構(gòu)圖。
具體實(shí)施方式
下面參照附圖3,詳細(xì)描述本發(fā)明內(nèi)容中四部份模塊的功能及協(xié)作關(guān)系。本發(fā)明涉及一種計(jì)算機(jī)應(yīng)用領(lǐng)域中的災(zāi)備數(shù)據(jù)瀏覽方式,尤其涉及一種對(duì)備份文件索引結(jié)構(gòu)。本發(fā)明的備份文件瀏覽系統(tǒng),包括索引判定模塊,文件列表提取模塊,索引生成模塊及索引查找模塊。其核心是對(duì)備份文件列表建立索引,以提高備份文件的瀏覽速度;
對(duì)所備份的文件數(shù)據(jù)按其層次關(guān)系建立索引,為備份數(shù)據(jù)瀏覽提供快速的文件定位方
式;
所述的文件索引結(jié)構(gòu),是通過(guò)順序的文件列表進(jìn)行生成;
所述的文件數(shù)據(jù)層次關(guān)系,按照文件夾,文件夾下文件的方式進(jìn)行組織,將組織的索引數(shù)據(jù)存儲(chǔ)在唯一的索引文件中;
所述的備份數(shù)據(jù)瀏覽,按照根目錄,子目錄,目錄中文件的方式自頂向下,逐級(jí)進(jìn)行;所述的備份數(shù)據(jù)瀏覽,在顯示目錄或文件時(shí),提供一個(gè)顯示方式的附加信息,以決定是實(shí)圖標(biāo)顯示還是虛圖標(biāo)顯示。備份數(shù)據(jù)瀏覽系統(tǒng)由四部份構(gòu)成,分別為索引判定模塊,文件列表提取模塊,索引生成模塊和索引查找模塊。索引判定模塊用于判定備份數(shù)據(jù)和當(dāng)前的索引文件是否一致,如果一致,則直接進(jìn)行索引查找,否則需要進(jìn)行索引生成的操作。文件列表提取模塊用于從備份數(shù)據(jù)中提取備份文件的路徑。索引生成模塊用于生成索引數(shù)據(jù)及索引文件。索引查找模塊用于進(jìn)行索引的查找。在用戶對(duì)已備份的數(shù)據(jù)進(jìn)行瀏覽時(shí),向備份數(shù)據(jù)瀏覽系統(tǒng)發(fā)送瀏覽請(qǐng)求,此瀏覽請(qǐng)求中包含用戶需要瀏覽的目錄,備份數(shù)據(jù)瀏覽系統(tǒng)需要將用戶請(qǐng)求瀏覽目錄下的子目錄及其文件返回給用戶。備份數(shù)據(jù)瀏覽系統(tǒng)在收到瀏覽請(qǐng)求后,首先通過(guò)索引判定模塊判定是否需要生成索引文件。其具體判定方式是通過(guò)查看索引文件是否存在,如存在,則索引文件的修改日期是否大于備份數(shù)據(jù)的修改日期來(lái)判定索引文件的有效性。如索引文件有效,則使用索引查找模塊來(lái)查找請(qǐng)求的目錄,如找到,返回此目錄下的子目錄和文件,否則返回空。如索引文件無(wú)效,則進(jìn)行索引文件生成的流程。備份數(shù)據(jù)瀏覽系統(tǒng)通過(guò)文件列列表提取模塊獲取到備份數(shù)據(jù)中的各文件路徑及該文件中否在此次備份中。索引生成模塊以此列表作為輸入,構(gòu)建出如圖1所示的索引內(nèi)存結(jié)構(gòu),再將索引內(nèi)存結(jié)構(gòu)以圖2的形式寫(xiě)入索引文件中,即完成了索引文件的生成。索引查找模塊以文件路徑作為輸入,按照樹(shù)形查找的方式,使用索引文件進(jìn)行查找。如果索引文件中有相應(yīng)的結(jié)點(diǎn),則返回該結(jié)點(diǎn)下所有的子結(jié)點(diǎn)的名字,是否是文件夾及是否高亮顯示;否則,返回空。
實(shí)施例在用戶進(jìn)行備份數(shù)據(jù)瀏覽時(shí),需要為用戶提供備份文件的樹(shù)形結(jié)構(gòu),同時(shí)提供一個(gè)標(biāo)識(shí),以顯示哪些文件在本此備份中進(jìn)行了備份,哪些文件沒(méi)有在本次備份中進(jìn)行備份。同時(shí),用戶備份數(shù)據(jù)瀏覽不應(yīng)受到備份文件規(guī)模的影響。為了滿足備份數(shù)據(jù)瀏覽的需要,并且將備份數(shù)據(jù)規(guī)模的增漲對(duì)備份數(shù)據(jù)瀏覽的影響降到最低,設(shè)計(jì)了一種備份文件的索引結(jié)構(gòu)。
本發(fā)明采用備份數(shù)據(jù)瀏覽系統(tǒng)處理備份數(shù)據(jù)的瀏覽。備份數(shù)據(jù)瀏覽系統(tǒng)包括文件列表提取模塊,索引生成模塊,索引查找模塊和索引判定模塊。在本發(fā)明中的索引結(jié)構(gòu)按照樹(shù)形的方式進(jìn)行組織,根據(jù)備份數(shù)據(jù)的不同,可以是單一的樹(shù),也可以是多棵樹(shù)構(gòu)成的森林。在樹(shù)形結(jié)構(gòu)中,每個(gè)結(jié)點(diǎn)由其子結(jié)點(diǎn)指針,兄弟結(jié)點(diǎn)指針,本結(jié)點(diǎn)的名字,本結(jié)點(diǎn)是否高亮顯示幾個(gè)元素構(gòu)成。其具體組織方式如圖1所示。如圖1所示,結(jié)點(diǎn)nodel為根結(jié)點(diǎn),它有兩個(gè)子目錄,分別為node2和node3 ;node2有兩個(gè)子目錄,為node4和node5 ;node3有一個(gè)子目錄,為node6。通過(guò)這種組織方式,可以把整個(gè)備份數(shù)據(jù)以樹(shù)形的方式組織起來(lái)。對(duì)于內(nèi)存中的索引組織,需要以一定的格式把它存儲(chǔ)在文件中,以便于保存和查找,更能節(jié)省內(nèi)存的使用。其具體組織方式如圖2所示。如圖2所示,在內(nèi)存中按樹(shù)形組織的6個(gè)節(jié)點(diǎn)在文件中以其廣度優(yōu)先的順序逐層存儲(chǔ)在文件中。每個(gè)節(jié)點(diǎn)都包括兄弟節(jié)點(diǎn)偏移,子節(jié)點(diǎn)偏移,是否是目錄,是否高亮顯示以及名字這幾個(gè)元素。通過(guò)采用廣度優(yōu)先的方式進(jìn)行,將對(duì)文件的隨機(jī)讀寫(xiě)轉(zhuǎn)變?yōu)轫樞蜃x寫(xiě),提高了索引生成與索引查找的速度。此后,后續(xù)的文件瀏覽就變成了使用該索引文件進(jìn)行文件名查找的操作。除說(shuō)明書(shū)所述的技術(shù)特征外,均為本專(zhuān)業(yè)技術(shù)人員的已知技術(shù)。
權(quán)利要求
1.一種備份文件瀏覽系統(tǒng),其特征在于其核心是對(duì)備份文件列表建立索引,利用備份數(shù)據(jù)瀏覽系統(tǒng)對(duì)已備份數(shù)據(jù)進(jìn)行瀏覽,以提高備份文件的瀏覽速度,備份數(shù)據(jù)瀏覽系統(tǒng)包括:索引生成模塊,文件列表提取模塊,索引查找模塊和索引判定模塊,其中: 索引生成模塊,備份數(shù)據(jù)瀏覽系統(tǒng)通過(guò)文件列列表提取模塊獲取到備份數(shù)據(jù)中的各文件路徑及該文件中否在此次備份中,索引生成模塊以此列表作為輸入,構(gòu)建出索引內(nèi)存結(jié)構(gòu),再將索引內(nèi)存結(jié)構(gòu)寫(xiě)入索引文件中,即完成了索引文件的生成; 文件列表提取模塊用于從備份數(shù)據(jù)中提取備份文件的路徑,索引生成模塊用于生成索引數(shù)據(jù)及索引文件,索引查找模塊用于進(jìn)行索引的查找; 索引查找模塊以文件路徑作為輸入,按照樹(shù)形查找的方式,使用索引文件進(jìn)行查找,如果索引文件中有相應(yīng)的結(jié)點(diǎn),則返回該結(jié)點(diǎn)下所有的子結(jié)點(diǎn)的名字,是否是文件夾及是否聞売顯不;否則,返回空; 索引判定模塊用于判定備份數(shù)據(jù)和當(dāng)前的索引文件是否一致,如果一致,則直接進(jìn)行索引查找,否則需要進(jìn)行索引生成的操作; 文件瀏覽步驟如下: 在用戶對(duì)已備份的數(shù)據(jù)進(jìn)行瀏覽時(shí),向備份數(shù)據(jù)瀏覽系統(tǒng)發(fā)送瀏覽請(qǐng)求,此瀏覽請(qǐng)求中包含用戶需要瀏覽的目錄,備份數(shù)據(jù)瀏覽系統(tǒng)需要將用戶請(qǐng)求瀏覽目錄下的子目錄及其文件返回給用戶; 備份數(shù)據(jù)瀏覽系統(tǒng)在收到瀏覽請(qǐng)求后,首先通過(guò)索引判定模塊判定是否需要生成索引文件,其具體判定方式是通過(guò)查看索引文件是否存在,如存在,則索引文件的修改日期是否大于備份數(shù)據(jù)的修改日期來(lái)判定索引文件的有效性; 如索引文件有效,則使用 索引查找模塊來(lái)查找請(qǐng)求的目錄,如找到,返回此目錄下的子目錄和文件,否則返回空,如索引文件無(wú)效,則進(jìn)行索引文件生成的流程; 備份數(shù)據(jù)瀏覽系統(tǒng)通過(guò)文件列列表提取模塊獲取到備份數(shù)據(jù)中的各文件路徑及該文件中否在此次備份中,索引生成模塊以此列表作為輸入,構(gòu)建出所示的索引內(nèi)存結(jié)構(gòu),再將索引內(nèi)存結(jié)構(gòu)寫(xiě)入索引文件中,即完成了索引文件的生成; 索引查找模塊以文件路徑作為輸入,按照樹(shù)形查找的方式,使用索引文件進(jìn)行查找,如果索引文件中有相應(yīng)的結(jié)點(diǎn),則返回該結(jié)點(diǎn)下所有的子結(jié)點(diǎn)的名字,是否是文件夾及是否聞売顯不;否則,返回空; 索引判定模塊判定備份數(shù)據(jù)和當(dāng)前的索引文件是否一致,如果一致,則直接進(jìn)行索引查找,否則需要重新通過(guò)索引生成模塊進(jìn)行索引生成的操作。
2.根據(jù)權(quán)利要求1所述的瀏覽系統(tǒng),其特征在于,對(duì)所備份的文件數(shù)據(jù)按其層次關(guān)系建立索引,為備份數(shù)據(jù)瀏覽提供快速的文件定位方式。
3.根據(jù)權(quán)利I要求所述的瀏覽系統(tǒng),其特征在于索引內(nèi)存結(jié)構(gòu),是通過(guò)順序的文件列表進(jìn)行生成。
4.根據(jù)權(quán)利要求1所述的瀏覽系統(tǒng),其特征在于文件數(shù)據(jù)層次關(guān)系,按照文件夾,文件夾下文件的方式進(jìn)行組織,將組織的索引數(shù)據(jù)存儲(chǔ)在唯一的索引文件中。
5.根據(jù)權(quán)利要求1所述的瀏覽系統(tǒng),其特征在于備份數(shù)據(jù)瀏覽,按照根目錄,子目錄,目錄中文件的方式自頂向下,逐級(jí)進(jìn)行。
6.根據(jù)權(quán)利要求3所述的瀏覽系統(tǒng),其特征在于備份數(shù)據(jù)瀏覽,在顯示目錄或文件時(shí),提供一個(gè)顯示方式的附加信息,以決定 是實(shí)圖標(biāo)顯示還是虛圖標(biāo)顯示。
全文摘要
本發(fā)明提供一種備份文件瀏覽系統(tǒng),核心是對(duì)備份文件列表建立索引,利用備份數(shù)據(jù)瀏覽系統(tǒng)對(duì)已備份數(shù)據(jù)進(jìn)行瀏覽,以提高備份文件的瀏覽速度,備份數(shù)據(jù)瀏覽系統(tǒng)由四部份構(gòu)成,分別為索引判定模塊,文件列表提取模塊,索引生成模塊和索引查找模塊。索引判定模塊用于判定備份數(shù)據(jù)和當(dāng)前的索引文件是否一致,如果一致,則直接進(jìn)行索引查找,否則需要進(jìn)行索引生成的操作。文件列表提取模塊用于從備份數(shù)據(jù)中提取備份文件的路徑。索引生成模塊用于生成索引數(shù)據(jù)及索引文件。索引查找模塊用于進(jìn)行索引的查找。
文檔編號(hào)G06F17/30GK103177112SQ20131011213
公開(kāi)日2013年6月26日 申請(qǐng)日期2013年4月2日 優(yōu)先權(quán)日2013年4月2日
發(fā)明者王旭, 張道偉, 呂萬(wàn)波 申請(qǐng)人:浪潮電子信息產(chǎn)業(yè)股份有限公司