一種重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)災(zāi)難恢復(fù)領(lǐng)域,特別涉及一種重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法。
【背景技術(shù)】
[0002]數(shù)據(jù)災(zāi)難恢復(fù)是指當(dāng)電子數(shù)據(jù)存儲(chǔ)設(shè)備發(fā)生故障或遭遇意外災(zāi)難造成數(shù)據(jù)意外丟失時(shí),通過相應(yīng)的數(shù)據(jù)恢復(fù)技術(shù)體系,達(dá)到找回丟失數(shù)據(jù),降低災(zāi)難損失的目的。數(shù)據(jù)災(zāi)難恢復(fù)作為“就災(zāi)機(jī)制”中重要的一環(huán),在加強(qiáng)災(zāi)害應(yīng)急體系建設(shè)、減少人民經(jīng)濟(jì)損失方面起著不可估量的重要作用,更是信息化社會(huì)一個(gè)不可缺少的基礎(chǔ)安全設(shè)施。
[0003]災(zāi)難數(shù)據(jù)恢復(fù)在恢復(fù)時(shí),經(jīng)常是海量數(shù)據(jù),并且當(dāng)數(shù)據(jù)文件及其目錄處于無序及無層級(jí)關(guān)系的情況,較難將恢復(fù)出的數(shù)據(jù)整理出層級(jí)關(guān)系。
【發(fā)明內(nèi)容】
[0004]本發(fā)明針對(duì)現(xiàn)有技術(shù)的不足,提供一種重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法,能夠有效解決當(dāng)數(shù)據(jù)文件及其目錄處于無序及無層級(jí)關(guān)系的情況,較難將恢復(fù)出的數(shù)據(jù)整理出層級(jí)關(guān)系的問題。
[0005]為解決以上問題,本發(fā)明采用的技術(shù)方案如下:一種重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法,包括如下步驟:
[0006]101通過逐步掃描關(guān)鍵信息FILEO恢復(fù)出磁盤內(nèi)所有數(shù)據(jù),包括正常數(shù)據(jù)、丟失數(shù)據(jù)和刪除數(shù)據(jù);102解析恢復(fù)出的所有數(shù)據(jù),通過文件類型編號(hào)將數(shù)據(jù)分類,分為文件夾類數(shù)據(jù)和文件類數(shù)據(jù);將文件夾類數(shù)據(jù)保存至數(shù)據(jù)庫表I中,并將文件夾類數(shù)據(jù)中內(nèi)容相同的目錄信息篩選過濾,確保無重復(fù)相同的目錄信息;將文件類數(shù)據(jù)保存至數(shù)據(jù)庫表2; 103讀取數(shù)據(jù)庫中的所有數(shù)據(jù)信息并進(jìn)行解析,確定其從屬關(guān)系重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)。
[0007]作為優(yōu)選,所述102具體方法如下:101恢復(fù)的數(shù)據(jù)中包含一個(gè)文件類型編號(hào),將此編號(hào)轉(zhuǎn)換為二進(jìn)制,此二進(jìn)制的第二位數(shù)為I時(shí),表示此數(shù)據(jù)為文件夾,否則為文件;文件信息中還包含Pino和ino兩個(gè)參數(shù),pino表示該資源信息的父節(jié)點(diǎn)的ID編號(hào),ino表示資源信息自身的ID編號(hào);通過文件類型編號(hào)將數(shù)據(jù)分類,分為文件夾類數(shù)據(jù)和文件類數(shù)據(jù);將文件夾類數(shù)據(jù)保存至數(shù)據(jù)庫表I中,建立數(shù)據(jù)庫虛表,并將文件夾類數(shù)據(jù)中的目錄信息中所有pino和ino相同的信息進(jìn)行過濾,確保無重復(fù)相同的目錄信息;將文件類數(shù)據(jù)保存至數(shù)據(jù)庫表2 ο
[0008]作為優(yōu)選,所述103具體方法如下:讀取數(shù)據(jù)庫中pino等于根節(jié)點(diǎn)值的數(shù)據(jù)N,保存在MAP中,查找數(shù)據(jù)庫中pino等于N的值,將這些數(shù)據(jù)保存至~所對(duì)應(yīng)的數(shù)組X中,接下來查找數(shù)據(jù)庫中Pino等于數(shù)組X中第一個(gè)數(shù)據(jù)M的值,將這些數(shù)據(jù)保存至M所對(duì)應(yīng)的數(shù)組Y中,再查找Y中的第一個(gè)數(shù)據(jù),依次查找下去。
[0009]作為優(yōu)選,所述103還包括以下方法:如果存在無父節(jié)點(diǎn)的丟失文件時(shí),單獨(dú)將其保存到丟失節(jié)點(diǎn)下,不再返回做遍歷。
[0010]本發(fā)明的方法可以達(dá)到以下效果:采用本方法,可以快速的將文件類型進(jìn)行區(qū)別,并能夠快速的建立起具有層級(jí)關(guān)系的數(shù)據(jù)文件目錄結(jié)構(gòu),使得數(shù)據(jù)文件及其目錄處于有序及有層級(jí)關(guān)系的狀態(tài),為后期的數(shù)據(jù)展示做鋪墊。
【附圖說明】
[0011]圖1為本發(fā)明的實(shí)施例示意圖。
【具體實(shí)施方式】
[0012]為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下參照附圖并舉實(shí)施例,對(duì)本發(fā)明做進(jìn)一步詳細(xì)說明。
[0013]—種重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法,包括以下步驟:
[0014]101通過逐步掃描關(guān)鍵信息FILEO恢復(fù)出磁盤內(nèi)所有數(shù)據(jù),包括正常數(shù)據(jù)、丟失數(shù)據(jù)和刪除數(shù)據(jù);102解析恢復(fù)出的所有數(shù)據(jù),通過文件類型編號(hào)將數(shù)據(jù)分類,分為文件夾類數(shù)據(jù)和文件類數(shù)據(jù);將文件夾類數(shù)據(jù)保存至數(shù)據(jù)庫表I中,并將文件夾類數(shù)據(jù)中內(nèi)容相同的目錄信息篩選過濾,確保無重復(fù)相同的目錄信息;將文件類數(shù)據(jù)保存至數(shù)據(jù)庫表2; 103讀取數(shù)據(jù)庫中的所有數(shù)據(jù)信息并進(jìn)行解析,確定其從屬關(guān)系重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)。
[0015]進(jìn)一步地,所述102具體方法如下:101恢復(fù)的數(shù)據(jù)中包含一個(gè)文件類型編號(hào),將此編號(hào)轉(zhuǎn)換為二進(jìn)制,此二進(jìn)制的第二位數(shù)為I時(shí),表示此數(shù)據(jù)為文件夾,否則為文件;文件信息中還包含Pino和ino兩個(gè)參數(shù),pino表示該資源信息的父節(jié)點(diǎn)的ID編號(hào),ino表示資源信息自身的ID編號(hào);通過文件類型編號(hào)將數(shù)據(jù)分類,分為文件夾類數(shù)據(jù)和文件類數(shù)據(jù);將文件夾類數(shù)據(jù)保存至數(shù)據(jù)庫表I中,建立數(shù)據(jù)庫虛表,并將文件夾類數(shù)據(jù)中的目錄信息中所有pino和ino相同的信息進(jìn)行過濾,確保無重復(fù)相同的目錄信息;將文件類數(shù)據(jù)保存至數(shù)據(jù)庫表2 ο
[0016]進(jìn)一步地,所述103具體方法如下:讀取數(shù)據(jù)庫中pino等于根節(jié)點(diǎn)值的數(shù)據(jù)N,保存在MAP中,查找數(shù)據(jù)庫中pino等于N的值,將這些數(shù)據(jù)保存至~所對(duì)應(yīng)的數(shù)組X中,接下來查找數(shù)據(jù)庫中Pino等于數(shù)組X中第一個(gè)數(shù)據(jù)M的值,將這些數(shù)據(jù)保存至M所對(duì)應(yīng)的數(shù)組Y中,再查找Y中的第一個(gè)數(shù)據(jù),依次查找下去。
[0017]進(jìn)一步地,所述103還包括以下方法:如果存在無父節(jié)點(diǎn)的丟失文件時(shí),單獨(dú)將其保存到丟失節(jié)點(diǎn)下,不再返回做遍歷。
[0018]實(shí)施例,如圖1所示:
[0019]103具體如下:首先讀取數(shù)據(jù)庫中pino等于根節(jié)點(diǎn)值的數(shù)據(jù),比如根節(jié)點(diǎn)值為2,先將2保存至圖1左邊的MAP中,查找數(shù)據(jù)庫中pino等于2的值,將這些數(shù)據(jù)存入到2所對(duì)應(yīng)的數(shù)組中,如下圖100,32,232,122等數(shù)據(jù),然后將100插入到MAP中,查找數(shù)據(jù)庫中所有pino等于100的數(shù)據(jù),保存至數(shù)組中,再查找100下的數(shù)據(jù)24545,再查找24545下的數(shù)據(jù)13434,依次查找下去,當(dāng)查找到985的目錄下時(shí),322334不存在子文件,則322334則為文件,此時(shí)查找985的下一個(gè)子文件45455,依次查找下去,查找完后再查找985的第三個(gè)文件,當(dāng)985查找完后,則查找985上層目錄的第二個(gè)文件也就是421,依次類推直至全部查找完成,完成后數(shù)據(jù)大致就為下圖1所示。
[0020]104具體如下:當(dāng)存在父節(jié)點(diǎn)不存在的文件時(shí),比如本文件的pino為10,而所有文件信息中ino都沒有等于10的情況,這時(shí)則認(rèn)為此文件為丟失文件,無父節(jié)點(diǎn),單獨(dú)將其保存到丟失節(jié)點(diǎn)下避免循環(huán)遍歷的情況,如上圖中右邊的421變?yōu)?00,則24545下的目錄421的子目錄為100,然而24545的父節(jié)點(diǎn)為100,如果此情況不做處理,則又會(huì)返回到100再繼續(xù)遍歷,則會(huì)出現(xiàn)死循環(huán)的情況,所以當(dāng)遇到此情況則不再返回做遍歷。
【主權(quán)項(xiàng)】
1.一種重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法,其特征在于,包括如下步驟: 101通過逐步掃描關(guān)鍵信息FILEO恢復(fù)出磁盤內(nèi)所有數(shù)據(jù),包括正常數(shù)據(jù)、丟失數(shù)據(jù)和刪除數(shù)據(jù);102解析恢復(fù)出的所有數(shù)據(jù),通過文件類型編號(hào)將數(shù)據(jù)分類,分為文件夾類數(shù)據(jù)和文件類數(shù)據(jù);將文件夾類數(shù)據(jù)保存至數(shù)據(jù)庫表I中,并將文件夾類數(shù)據(jù)中內(nèi)容相同的目錄信息篩選過濾,確保無重復(fù)相同的目錄信息;將文件類數(shù)據(jù)保存至數(shù)據(jù)庫表2; 103讀取數(shù)據(jù)庫中的所有數(shù)據(jù)信息并進(jìn)行解析,確定其從屬關(guān)系重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)。2.根據(jù)權(quán)利要求1所述的重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法,其特征在于,所述102具體方法如下:101恢復(fù)的數(shù)據(jù)中包含一個(gè)文件類型編號(hào),將此編號(hào)轉(zhuǎn)換為二進(jìn)制,此二進(jìn)制的第二位數(shù)為I時(shí),表示此數(shù)據(jù)為文件夾,否則為文件;文件信息中還包含Pino和ino兩個(gè)參數(shù),Pino表示該資源信息的父節(jié)點(diǎn)的ID編號(hào),ino表示資源信息自身的ID編號(hào);通過文件類型編號(hào)將數(shù)據(jù)分類,分為文件夾類數(shù)據(jù)和文件類數(shù)據(jù);將文件夾類數(shù)據(jù)保存至數(shù)據(jù)庫表I中,建立數(shù)據(jù)庫虛表,并將文件夾類數(shù)據(jù)中的目錄信息中所有Pino和ino相同的信息進(jìn)行過濾,確保無重復(fù)相同的目錄信息;將文件類數(shù)據(jù)保存至數(shù)據(jù)庫表2。3.根據(jù)權(quán)利要求1或2所述的重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法,其特征在于,所述103具體方法如下:讀取數(shù)據(jù)庫中Pino等于根節(jié)點(diǎn)值的數(shù)據(jù)N,保存在MAP中,查找數(shù)據(jù)庫中pino等于N的值,將這些數(shù)據(jù)保存至N所對(duì)應(yīng)的數(shù)組X中,接下來查找數(shù)據(jù)庫中pino等于數(shù)組X中第一個(gè)數(shù)據(jù)M的值,將這些數(shù)據(jù)保存至M所對(duì)應(yīng)的數(shù)組Y中,再查找Y中的第一個(gè)數(shù)據(jù),依次查找下去。4.根據(jù)權(quán)利要求3所述的重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法,其特征在于,所述103還包括以下方法:如果存在無父節(jié)點(diǎn)的丟失文件時(shí),單獨(dú)將其保存到丟失節(jié)點(diǎn)下,不再返回做遍歷。
【專利摘要】本發(fā)明公開了一種重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)的方法,屬于數(shù)據(jù)災(zāi)難恢復(fù)領(lǐng)域,101通過逐步掃描關(guān)鍵信息FILE0恢復(fù)出磁盤內(nèi)所有數(shù)據(jù),包括正常數(shù)據(jù)、丟失數(shù)據(jù)和刪除數(shù)據(jù);102解析恢復(fù)出的所有數(shù)據(jù),通過文件類型編號(hào)將數(shù)據(jù)分類,分為文件夾類數(shù)據(jù)和文件類數(shù)據(jù);將文件夾類數(shù)據(jù)保存至數(shù)據(jù)庫表1中,并將文件夾類數(shù)據(jù)中內(nèi)容相同的目錄信息篩選過濾,確保無重復(fù)相同的目錄信息;將文件類數(shù)據(jù)保存至數(shù)據(jù)庫表2;103讀取數(shù)據(jù)庫中的所有數(shù)據(jù)信息并進(jìn)行解析,確定其從屬關(guān)系重建災(zāi)難數(shù)據(jù)文件目錄結(jié)構(gòu)。采用本方法,可以快速的將文件類型進(jìn)行區(qū)別,并能夠快速的建立起具有層級(jí)關(guān)系的數(shù)據(jù)文件目錄結(jié)構(gòu)。
【IPC分類】G06F17/30, G06F11/14
【公開號(hào)】CN105677514
【申請(qǐng)?zhí)枴緾N201610009766
【發(fā)明人】黃旭, 張佳強(qiáng), 張明忠
【申請(qǐng)人】四川秘?zé)o痕信息安全技術(shù)有限責(zé)任公司
【公開日】2016年6月15日
【申請(qǐng)日】2016年1月8日