專利名稱:基于光盤的數(shù)據(jù)庫存儲系統(tǒng)及利用該系統(tǒng)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)據(jù)庫存儲系統(tǒng)及方法,特別是涉及一種用于數(shù)據(jù)庫備份的存儲系統(tǒng)及方法。
背景技術(shù):
數(shù)據(jù)庫系統(tǒng)通常由軟件和硬件組成,軟件包括安裝在操作系統(tǒng)中的數(shù)據(jù)庫管理系統(tǒng)(簡稱DBMS)和應(yīng)用程序。DBMS是數(shù)據(jù)庫系統(tǒng)的核心軟件,主要功能包括數(shù)據(jù)定義,數(shù)據(jù)操縱及數(shù)據(jù)庫的建立、運(yùn)行、管理與維護(hù);硬件包括構(gòu)成計算機(jī)系統(tǒng)的物理設(shè)備,包括服務(wù)器、存儲器;服務(wù)器為操作系統(tǒng)提供運(yùn)行環(huán)境,存儲器為存儲數(shù)據(jù)庫提供存儲空間,以及存儲數(shù)據(jù)庫所需的外圍設(shè)備;數(shù)據(jù)庫主要利用的存儲設(shè)備如磁盤、磁盤陣列等。迄今數(shù)據(jù)庫系統(tǒng)都采用磁盤作為數(shù)據(jù)庫的存儲載體,它具有數(shù)據(jù)訪問速度快、擴(kuò)充容易等特點(diǎn),是實(shí)時數(shù)據(jù)處理的最佳選擇。 但是,數(shù)據(jù)庫系統(tǒng)的高效響應(yīng)性能要求,與磁盤設(shè)備高速運(yùn)轉(zhuǎn)的物理結(jié)構(gòu)特點(diǎn),使得其系統(tǒng)平均無故障時間(MTBF)得不到長時間保證,當(dāng)數(shù)據(jù)庫規(guī)模越來越大時,磁盤的大量使用,會使系統(tǒng)可靠性快速下降。大量使用磁盤存儲數(shù)據(jù)首先會大量消耗電力,以磁盤陣列RAID5模式為例,采用5塊2TB容量的高速硬盤,可用容量大約為8TB,對于PB級的數(shù)據(jù)庫系統(tǒng)至少需要700塊以上的硬盤,對于容量偏小的固態(tài)硬盤,硬盤數(shù)量更會翻倍,因此對于大數(shù)據(jù)源并不合適。即使利用電源節(jié)能技術(shù),磁盤陣列運(yùn)行時的電力消耗也是相當(dāng)可觀的。由于磁盤上內(nèi)容可以改寫,硬盤陣列在一些安全性要求比較高的環(huán)境下,不能使用。磁盤上的數(shù)據(jù)容易因磁盤物理損壞而丟失,因此需要配置備份系統(tǒng)實(shí)時或定期備份數(shù)據(jù)。實(shí)時備份系統(tǒng)同樣會增加設(shè)備投資、電力消耗,而定期備份系統(tǒng),往往是采用增量備份,備份在磁帶等存儲設(shè)備中,備份后的數(shù)據(jù)無法直接被DBMS讀取使用,備份還原周期長,還原時影響數(shù)據(jù)庫系統(tǒng)的正常工作時間。因此對于訪問頻度不太高又需長期保存的數(shù)據(jù),以及屬于歸檔保存的數(shù)據(jù),均不適于采用磁盤存儲器保存。各種格式的文件數(shù)據(jù)正在飛速增長,它們的存儲和使用問題給數(shù)據(jù)庫系統(tǒng)的軟硬件結(jié)構(gòu)設(shè)計提出了挑戰(zhàn)。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于光盤的數(shù)據(jù)庫存儲系統(tǒng),解決數(shù)據(jù)庫磁盤存儲成本高,數(shù)據(jù)安全性差的技術(shù)問題。本發(fā)明的另一個目的是利用上述基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法,解決數(shù)據(jù)庫系統(tǒng)安全性與使用效率之間難以平衡的技術(shù)問題。本發(fā)明的基于光盤的數(shù)據(jù)庫存儲系統(tǒng),包括安裝在服務(wù)器上的數(shù)據(jù)庫管理系統(tǒng),與服務(wù)器數(shù)據(jù)連接的磁盤存儲裝置和光盤存儲裝置,以及建立在磁盤存儲裝置上的磁盤數(shù)據(jù)庫,數(shù)據(jù)庫管理系統(tǒng)用于響應(yīng)數(shù)據(jù)請求,完成存儲裝置的數(shù)據(jù)庫管理和數(shù)據(jù)管理,其中數(shù)據(jù)庫管理系統(tǒng)包括字段結(jié)構(gòu)生成模塊,記錄索引生成模塊,存儲空間分配模塊,存儲空間狀態(tài)模塊,記錄鏈接模塊,記錄拆分模塊,光盤建庫模塊,字段結(jié)構(gòu)生成模塊,讀取數(shù)據(jù)庫中每一條記錄的字段結(jié)構(gòu)信息,包括記錄中各字段的數(shù)據(jù)類型、長度,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)中;記錄索引生成模塊,記錄數(shù)據(jù)庫中每一條記錄的索引信息,包括記錄中各字段的修改時間、修改內(nèi)容,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)中;存儲空間分配模塊,記錄為每一條記錄所分配的標(biāo)準(zhǔn)存儲單元在數(shù)據(jù)庫文件中的位置信息,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)中;存儲空間狀態(tài)模塊,記錄數(shù)據(jù)庫文件中已分配標(biāo)準(zhǔn)存儲單元中未使用的空間信息,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)中;記錄鏈接模塊,將數(shù)據(jù)庫中各記錄的字段結(jié)構(gòu)信息、索引信息、標(biāo)準(zhǔn)存儲單元的位 置信息和空間信息合并,形成數(shù)據(jù)庫特征數(shù)據(jù),并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)中;記錄拆分模塊,根據(jù)數(shù)據(jù)庫管理系統(tǒng)指令進(jìn)行數(shù)據(jù)庫中記錄拆分,數(shù)據(jù)拆分以記錄為單位進(jìn)行,讀取數(shù)據(jù)庫特征數(shù)據(jù),確定記錄中每個字段的數(shù)據(jù)位置和數(shù)據(jù)量,標(biāo)記出符合指令參數(shù)的記錄,并將標(biāo)記信息寫入在數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)中;光盤建庫模塊,用于將磁盤數(shù)據(jù)庫中與光盤容量匹配的記錄寫入數(shù)據(jù)庫管理系統(tǒng)在光盤上建立的子數(shù)據(jù)庫文件,并通過數(shù)據(jù)庫管理系統(tǒng)生成對應(yīng)記錄的字段結(jié)構(gòu)信息、索引信息,記錄標(biāo)準(zhǔn)存儲單元位置信息和空間信息,形成子數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù)。數(shù)據(jù)庫管理系統(tǒng)還包括庫結(jié)構(gòu)生成模塊,將數(shù)據(jù)庫的庫結(jié)構(gòu)形成獨(dú)立數(shù)據(jù)文件,數(shù)據(jù)庫管理系統(tǒng)根據(jù)獨(dú)立數(shù)據(jù)文件在光盤上建立相同庫結(jié)構(gòu)的子數(shù)據(jù)庫,或在其他磁盤存儲裝置上建立相同庫結(jié)構(gòu)的磁盤數(shù)據(jù)庫。數(shù)據(jù)庫管理系統(tǒng)還包括記錄合并模塊,根據(jù)數(shù)據(jù)庫管理系統(tǒng)指令,將光盤上子數(shù)據(jù)庫中的記錄合并到磁盤存儲裝置上的磁盤數(shù)據(jù)庫中,并通過數(shù)據(jù)庫管理系統(tǒng)生成對應(yīng)記錄的字段結(jié)構(gòu)信息、索引信息,以及記錄標(biāo)準(zhǔn)存儲單元位置信息和空間信息,形成磁盤數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù)。利用所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法,進(jìn)行磁盤數(shù)據(jù)庫光盤備份的步驟如下步驟110,數(shù)據(jù)庫管理系統(tǒng)獲取光盤存儲介質(zhì)的容量參數(shù);步驟115,通過記錄拆分模塊讀取磁盤存儲裝置中磁盤數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),計算各記錄的容量,確定各子數(shù)據(jù)庫起始記錄號和終止記錄號,各子數(shù)據(jù)庫的記錄數(shù)量;步驟120,、通過庫結(jié)構(gòu)生成模塊在光盤上分別建立相同庫結(jié)構(gòu)的子數(shù)據(jù)庫文件;步驟125,通過光盤建庫模塊將各子數(shù)據(jù)庫對應(yīng)的起始記錄號和終止記錄號之間的記錄順序?qū)懭雽?yīng)光盤上的子數(shù)據(jù)庫文件中;步驟130,通過字段結(jié)構(gòu)生成模塊向各子數(shù)據(jù)庫文件中寫入相應(yīng)記錄的字段結(jié)構(gòu)信息;步驟135,通過記錄索引生成模塊向各子數(shù)據(jù)庫文件中寫入相應(yīng)記錄的索引信息;步驟140,通過存儲空間分配模塊向各子數(shù)據(jù)庫文件中寫入相應(yīng)記錄的標(biāo)準(zhǔn)存儲單元位置信息;
步驟145,通過存儲空間狀態(tài)模塊記錄標(biāo)準(zhǔn)存儲單元的空間信息;步驟150,通過記錄鏈接模塊形成相應(yīng)子數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成數(shù)據(jù)庫備份。利用所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法,進(jìn)行光盤數(shù)據(jù)庫在磁盤存儲裝置中還原的步驟如下步驟210,數(shù)據(jù)庫管理系統(tǒng)通過庫結(jié)構(gòu)生成模塊在磁盤存儲裝置中建立磁盤數(shù)據(jù)庫文件;步驟215,數(shù)據(jù)庫管理系統(tǒng)通過記錄拆分模塊讀取各光盤上子數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定記錄的最小記錄號和最大記錄號,確定各子數(shù)據(jù)庫記錄容量、記錄數(shù)量;
步驟220,數(shù)據(jù)庫管理系統(tǒng)通過記錄合并模塊,根據(jù)各子數(shù)據(jù)庫記錄號大小,將各子數(shù)據(jù)庫中的記錄順序?qū)懭氪疟P存儲裝置中的磁盤數(shù)據(jù)庫文件中;步驟225,通過字段結(jié)構(gòu)生成模塊向磁盤數(shù)據(jù)庫文件中寫入記錄的字段結(jié)構(gòu)信息;步驟230,通過記錄索引生成模塊向磁盤數(shù)據(jù)庫文件中寫入記錄的索引信息;步驟235,通過存儲空間分配模塊向磁盤數(shù)據(jù)庫文件中寫入記錄的標(biāo)準(zhǔn)存儲單元位置信息;步驟240,通過存儲空間狀態(tài)模塊記錄標(biāo)準(zhǔn)存儲單元的空間信息;步驟245,通過記錄鏈接模塊形成磁盤數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成數(shù)據(jù)庫還原。利用所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法,將光盤數(shù)據(jù)庫數(shù)據(jù)在磁盤上建立數(shù)據(jù)庫的步驟如下步驟310,數(shù)據(jù)庫管理系統(tǒng)通過庫結(jié)構(gòu)生成模塊在磁盤存儲裝置中建立磁盤數(shù)據(jù)庫文件;步驟315,數(shù)據(jù)庫管理系統(tǒng)通過記錄拆分模塊讀取各光盤上子數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定記錄的記錄號和數(shù)據(jù)量確定各子數(shù)據(jù)庫記錄容量;步驟320,數(shù)據(jù)庫管理系統(tǒng)通過記錄合并模塊,將需要的記錄從各子數(shù)據(jù)庫中讀取后,寫入磁盤存儲裝置中的數(shù)據(jù)庫文件;步驟325,通過字段結(jié)構(gòu)生成模塊生成記錄的字段結(jié)構(gòu)信息;步驟330,通過記錄索引生成模塊生成記錄的索引信息;步驟335,通過存儲空間分配模塊記錄標(biāo)準(zhǔn)存儲單元位置信息;步驟340,通過存儲空間狀態(tài)模塊記錄標(biāo)準(zhǔn)存儲單元的空間信息;步驟345,通過記錄鏈接模塊形成磁盤存儲裝置中數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成光盤數(shù)據(jù)庫數(shù)據(jù)在磁盤存儲裝置中建立數(shù)據(jù)庫。利用所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法,將磁盤數(shù)據(jù)庫數(shù)據(jù)在光盤上建立數(shù)據(jù)庫的步驟如下步驟410,數(shù)據(jù)庫管理系統(tǒng)通過庫結(jié)構(gòu)生成模塊在光盤上建立子數(shù)據(jù)庫文件;步驟415,數(shù)據(jù)庫管理系統(tǒng)通過記錄拆分模塊讀取磁盤上磁盤數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定各記錄的存儲容量和存儲位置;步驟420,數(shù)據(jù)庫管理系統(tǒng)通過記錄合并模塊,將需要的記錄從磁盤數(shù)據(jù)庫中讀取后,寫入光盤中的數(shù)據(jù)庫文件;步驟425,通過字段結(jié)構(gòu)生成模塊生成記錄的字段結(jié)構(gòu)信息;步驟430,通過記錄索引生成模塊生成記錄的索引信息;步驟435,通過存儲空間分配模塊記錄標(biāo)準(zhǔn)存儲單元位置信息;步驟440,通過存儲空間狀態(tài)模塊記錄標(biāo)準(zhǔn)存儲單元的空間信息;步驟445,通過記錄鏈接模塊形成光盤中子數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成利用磁盤數(shù)據(jù)庫中的數(shù)據(jù)在光盤建立數(shù)據(jù)庫。本發(fā)明的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)完善了數(shù)據(jù)庫的存儲備份功能,數(shù)據(jù)庫管理系統(tǒng)將一個龐大的磁盤數(shù)據(jù)庫拆分成若干個結(jié)構(gòu)定義一致,數(shù)據(jù)完整的子數(shù)據(jù)庫,磁盤數(shù) 據(jù)庫中的各記錄關(guān)聯(lián)數(shù)據(jù)不需要跨數(shù)據(jù)庫存儲或關(guān)聯(lián),使得磁盤數(shù)據(jù)庫在備份過程中可以保持?jǐn)?shù)據(jù)的完整性,每一個包含子數(shù)據(jù)庫的光盤都可以接受數(shù)據(jù)庫管理系統(tǒng)的管理,作為正常的數(shù)據(jù)源。利用光盤存儲裝置容量巨大,數(shù)據(jù)保存安全性高的特點(diǎn),數(shù)據(jù)庫管理系統(tǒng)可以直接在作為備份的光盤上進(jìn)行數(shù)據(jù)檢索,為最終實(shí)現(xiàn)用光盤代替磁盤作為數(shù)據(jù)庫的存儲載體提供了技術(shù)手段??梢燥@著降低數(shù)據(jù)庫存儲系統(tǒng)的構(gòu)建成本,降低能源消耗,解決數(shù)據(jù)安全性與數(shù)據(jù)響應(yīng)性能間的矛盾。本發(fā)明的數(shù)據(jù)庫備份、合并與還原方法,改變了數(shù)據(jù)處于備份狀態(tài)的數(shù)據(jù)格式,提高了數(shù)據(jù)備份還原速度,同時不影響數(shù)據(jù)庫管理系統(tǒng)的數(shù)據(jù)響應(yīng)業(yè)務(wù),使得數(shù)據(jù)庫中的數(shù)據(jù)可以直接存儲在光盤上,為實(shí)現(xiàn)數(shù)據(jù)庫數(shù)據(jù)利用磁盤存儲裝置和光盤存儲裝置進(jìn)行分級存儲提供了良好途徑。下面結(jié)合附圖對本發(fā)明的實(shí)施例作進(jìn)一步說明。
圖I為本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng)實(shí)施例的結(jié)構(gòu)示意圖;圖2為本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng)實(shí)施例中數(shù)據(jù)庫管理系統(tǒng)的結(jié)構(gòu)示意圖;圖3為本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng)實(shí)施例中數(shù)據(jù)庫文件的物理結(jié)構(gòu)示意圖;圖4為利用本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法流程圖一;圖5為利用本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法流程圖二 ;圖6為利用本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法流程圖三;圖7為利用本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法流程圖四。
具體實(shí)施例方式本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng)實(shí)施例中,如圖I和圖2所示,包括服務(wù)器server、磁盤存儲裝置diskstorage,服務(wù)器server上安裝有數(shù)據(jù)庫管理系統(tǒng)dm,磁盤數(shù)據(jù)庫db安裝在磁盤存儲裝置diskstorage上。還包括作為光盤存儲裝置的光盤庫jukebox,利用換盤機(jī)構(gòu)完成光盤在驅(qū)動器上的替換,利用驅(qū)動器完成每張光盤的讀寫,數(shù)據(jù)庫管理系統(tǒng)dm采用TRIP,磁盤存儲裝置diskstorage采用RAID磁盤陣列。服務(wù)器server分別與光盤庫jukebox、磁盤存儲裝置diskstorage進(jìn)行數(shù)據(jù)連接,數(shù)據(jù)庫管理系統(tǒng)dm響應(yīng)數(shù)據(jù)需求,在磁盤上建立磁盤數(shù)據(jù)庫db文件,管理數(shù)據(jù)庫中的記錄,在光盤Cd上建立數(shù)據(jù)備份和讀取還原數(shù)據(jù),光盤庫jukebox根據(jù)數(shù)據(jù)庫管理系統(tǒng)dm的相應(yīng)數(shù)據(jù)指令完成驅(qū)動器上的光盤Cd替換。數(shù)據(jù)庫管理系統(tǒng)dm包括字段結(jié)構(gòu)生成模塊ul,記錄索引生成模塊u2,存儲空間分配模塊u3,存儲空間狀態(tài)模塊u4,記錄鏈接模塊u5,記錄拆分模塊u6,光盤建庫模塊u7,字段結(jié)構(gòu)生成模塊ul,讀取數(shù)據(jù)庫中每一條記錄的字段結(jié)構(gòu)信息,包括記錄中各字段的數(shù)據(jù)類型、長度,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)dm中;記錄索引生成模塊u2,記錄數(shù)據(jù)庫中每一條記錄的索引信息,包括記錄中各字段的修改時間、修改內(nèi)容,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)dm中;存儲空間分配模塊u3,記錄為每一條記錄所分配的標(biāo)準(zhǔn)存儲單元在數(shù)據(jù)庫文件中 的位置信息,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)dm中;存儲空間狀態(tài)模塊u4,記錄數(shù)據(jù)庫文件中已分配標(biāo)準(zhǔn)存儲單元中未使用的空間信息,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)dm中;記錄鏈接模塊u5,將數(shù)據(jù)庫中各記錄的字段結(jié)構(gòu)信息、索引信息、標(biāo)準(zhǔn)存儲單元的位置信息和空間信息合并,形成數(shù)據(jù)庫特征數(shù)據(jù),并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)dm中;記錄拆分模塊u6,根據(jù)數(shù)據(jù)庫管理系統(tǒng)dm指令進(jìn)行數(shù)據(jù)庫中記錄拆分,數(shù)據(jù)拆分以記錄為單位進(jìn)行,讀取數(shù)據(jù)庫特征數(shù)據(jù),確定記錄中每個字段的數(shù)據(jù)位置和數(shù)據(jù)量,標(biāo)記出符合指令參數(shù)的記錄,并將標(biāo)記信息寫入在數(shù)據(jù)庫db文件或數(shù)據(jù)庫管理系統(tǒng)dm中;光盤建庫模塊U7,用于將磁盤數(shù)據(jù)庫db中與光盤容量匹配的記錄寫入數(shù)據(jù)庫管理系統(tǒng)dm在光盤上建立的子數(shù)據(jù)庫dbl文件,并通過數(shù)據(jù)庫管理系統(tǒng)dm生成對應(yīng)記錄的字段結(jié)構(gòu)信息、索引信息,記錄標(biāo)準(zhǔn)存儲單元位置信息和空間信息,形成子數(shù)據(jù)庫dbl的數(shù)據(jù)庫特征數(shù)據(jù)。數(shù)據(jù)庫管理系統(tǒng)dm還包括庫結(jié)構(gòu)生成模塊u8,將數(shù)據(jù)庫的庫結(jié)構(gòu)形成獨(dú)立數(shù)據(jù)文件,數(shù)據(jù)庫管理系統(tǒng)dm根據(jù)獨(dú)立數(shù)據(jù)文件在光盤上建立相同庫結(jié)構(gòu)的子數(shù)據(jù)庫dbl,或在其他磁盤存儲裝置diskstorage上建立相同庫結(jié)構(gòu)的磁盤數(shù)據(jù)庫db。通過利用獨(dú)立數(shù)據(jù)文件可以有效管理數(shù)據(jù)庫的數(shù)據(jù)使用權(quán)限,避免直接通過數(shù)據(jù)庫管理系統(tǒng)建立數(shù)據(jù)庫時,意外泄露數(shù)據(jù)庫結(jié)構(gòu),通過對獨(dú)立數(shù)據(jù)文件進(jìn)行加密\解密處理,可以避免數(shù)據(jù)庫在異地或異位置建立時數(shù)據(jù)庫結(jié)構(gòu)泄密,只有同時具有數(shù)據(jù)庫結(jié)構(gòu)和數(shù)據(jù)庫文件才能建立可用的數(shù)據(jù)庫,避免了數(shù)據(jù)庫文件被非法直接利用。數(shù)據(jù)庫管理系統(tǒng)dm還包括記錄合并模塊u9,根據(jù)數(shù)據(jù)庫管理系統(tǒng)dm指令,將光盤上子數(shù)據(jù)庫dbl中的記錄合并到磁盤存儲裝置diskstorage上的磁盤數(shù)據(jù)庫db中,并通過數(shù)據(jù)庫管理系統(tǒng)dm生成對應(yīng)記錄的字段結(jié)構(gòu)信息、索引信息,記錄標(biāo)準(zhǔn)存儲單元位置信息和空間信息,形成磁盤數(shù)據(jù)庫db的數(shù)據(jù)庫特征數(shù)據(jù)。如圖3所示數(shù)據(jù)庫文件包括控制塊、記錄號索引、空位表和數(shù)據(jù)塊??刂茐K中存放著記錄號、記錄號對應(yīng)的字段,經(jīng)過索引的最高記錄號、上次索引后至今未做過修改或新增記錄的記錄號,以及記錄號索引和空位表的地址等。記錄號索引由許多標(biāo)準(zhǔn)存儲單元組成,每標(biāo)準(zhǔn)存儲單元包含著指針,指向每個記錄的最新版和該版生成/修改的日期及時間。
空位表保存每個標(biāo)準(zhǔn)存儲單元中還有多少空間可以使用。數(shù)據(jù)塊由標(biāo)準(zhǔn)存儲單元組成,是存放各記錄字段數(shù)據(jù)本身的地方,每塊連續(xù)地存儲著整個記錄,或記錄的一部分。利用數(shù)據(jù)庫管理系統(tǒng)dm,組成數(shù)據(jù)庫特征數(shù)據(jù)的各記錄的字段結(jié)構(gòu)信息、索引信息、標(biāo)準(zhǔn)存儲單元位置信息會隨記錄的變化或移動而更新。本實(shí)施例在通過數(shù)據(jù)庫管理系統(tǒng)dm完成對用戶的數(shù)據(jù)響應(yīng)和數(shù)據(jù)庫db的常規(guī)數(shù)據(jù)管理基礎(chǔ)上,完善了數(shù)據(jù)存儲備份功能。利用本實(shí)施例,可以使數(shù)據(jù)庫管理系統(tǒng)dm將一個龐大的磁盤數(shù)據(jù)庫拆分成若干個完整的子數(shù)據(jù)庫,每個子數(shù)據(jù)庫與原磁盤數(shù)據(jù)庫結(jié)構(gòu)相同,子數(shù)據(jù)庫中的各記錄的關(guān)聯(lián)數(shù)據(jù)完整,數(shù)據(jù)庫管理系統(tǒng)dm可以直接在子數(shù)據(jù)庫中完成該記錄范圍的數(shù)據(jù)檢索和查詢,不需要對同一記錄的不同字段數(shù)據(jù)在各子數(shù)據(jù)庫間進(jìn)行數(shù)據(jù)檢索,保持了各子數(shù)據(jù)庫的數(shù)據(jù)完整性。 由于子數(shù)據(jù)庫數(shù)據(jù)完整,同時庫結(jié)構(gòu)與數(shù)據(jù)庫管理系統(tǒng)dm定義的庫結(jié)構(gòu)一致,因此本實(shí)施例可以在數(shù)據(jù)庫備份時采用與備份介質(zhì)容量相當(dāng)?shù)淖訑?shù)據(jù)庫文件作為備份文件,使得數(shù)據(jù)備份格式與數(shù)據(jù)庫格式一致??梢猿浞掷霉獗P庫的容量優(yōu)勢,將大型數(shù)據(jù)庫直接拆分為子數(shù)據(jù)庫,刻錄在相應(yīng)的光盤上,實(shí)現(xiàn)數(shù)據(jù)備份。同時,數(shù)據(jù)庫管理系統(tǒng)dm可以直接在光盤庫中實(shí)現(xiàn)對不常用數(shù)據(jù)的檢索查詢,減少了對磁盤存儲裝置的需求,實(shí)現(xiàn)了系統(tǒng)組成成本與系統(tǒng)耗電量的大幅降低。進(jìn)而,在保證磁盤存儲裝置對數(shù)據(jù)響應(yīng)高效率的前提下,提高了數(shù)據(jù)的安全性。本發(fā)明的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)經(jīng)過適應(yīng)性修改,也可以應(yīng)用在其他SQL數(shù)據(jù)庫系統(tǒng),為廣泛實(shí)現(xiàn)高可靠性的數(shù)據(jù)存儲提供了良好地解決方案。將數(shù)據(jù)庫光盤放入與服務(wù)器直接相連的光盤驅(qū)動器或光盤庫中,通過服務(wù)器上的數(shù)據(jù)庫管理系統(tǒng)即可對一個數(shù)據(jù)庫光盤中的數(shù)據(jù)庫或多個數(shù)據(jù)庫光盤中的數(shù)據(jù)庫進(jìn)行連續(xù)的全文檢索,包括二次檢索、布爾檢索等高級檢索,不再需要將數(shù)據(jù)從數(shù)據(jù)庫光盤中的數(shù)據(jù)庫先還原到磁盤存儲裝置中。利用本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng)創(chuàng)建數(shù)據(jù)庫光盤中的數(shù)據(jù)庫、進(jìn)行數(shù)據(jù)庫備份、合并數(shù)據(jù)庫和進(jìn)行數(shù)據(jù)檢索時,使用的光盤有兩種光盤,可重寫光盤和一次性寫入光盤??芍貙懝獗P是可反復(fù)刻錄,一次性寫入光盤是一次寫入不能改寫。如圖4所示,利用上述基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行磁盤數(shù)據(jù)庫光盤備份的過程如下步驟110,數(shù)據(jù)庫管理系統(tǒng)獲取光盤存儲介質(zhì)的容量參數(shù);步驟115,通過記錄拆分模塊U6讀取磁盤存儲裝置中磁盤數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),計算各記錄的容量,確定各子數(shù)據(jù)庫起始記錄號和終止記錄號,各子數(shù)據(jù)庫的記錄數(shù)量;步驟120,、通過庫結(jié)構(gòu)生成模塊u8在光盤上分別建立相同庫結(jié)構(gòu)的子數(shù)據(jù)庫文件;步驟125,通過光盤建庫模塊u7將各子數(shù)據(jù)庫對應(yīng)的起始記錄號和終止記錄號之間的記錄順序?qū)懭雽?yīng)光盤上的子數(shù)據(jù)庫文件中;步驟130,通過字段結(jié)構(gòu)生成模塊Ul向各子數(shù)據(jù)庫文件中寫入相應(yīng)記錄的字段結(jié)構(gòu)信息;
步驟135,通過記錄索引生成模塊u2向各子數(shù)據(jù)庫文件中寫入相應(yīng)記錄的索引信息;步驟140,通過存儲空間分配模塊u3向各子數(shù)據(jù)庫文件中寫入相應(yīng)記錄的標(biāo)準(zhǔn)存儲單元位置信息;步驟145,通過存儲空間狀態(tài)模塊u4記錄標(biāo)準(zhǔn)存儲單元的空間信息;步驟150,通過記錄鏈接模塊u5形成相應(yīng)子數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成數(shù)據(jù)庫備份。如圖5所示,利用上述基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行光盤數(shù)據(jù)庫在磁盤存儲裝置中還原的過程如下步驟210,數(shù)據(jù)庫管理系統(tǒng)通過庫結(jié)構(gòu)生成模塊u8在磁盤存儲裝置中建立磁盤數(shù) 據(jù)庫文件;步驟215,數(shù)據(jù)庫管理系統(tǒng)通過記錄拆分模塊u6讀取各光盤上子數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定記錄的最小記錄號和最大記錄號,確定各子數(shù)據(jù)庫記錄容量、記錄數(shù)量;步驟220,數(shù)據(jù)庫管理系統(tǒng)通過記錄合并模塊u9,根據(jù)各子數(shù)據(jù)庫記錄號大小,將各子數(shù)據(jù)庫中的記錄順序?qū)懭氪疟P存儲裝置中的磁盤數(shù)據(jù)庫文件中;步驟225,通過字段結(jié)構(gòu)生成模塊Ul向磁盤數(shù)據(jù)庫文件中寫入記錄的字段結(jié)構(gòu)信息;步驟230,通過記錄索引生成模塊u2向磁盤數(shù)據(jù)庫文件中寫入記錄的索引信息;步驟235,通過存儲空間分配模塊u3向磁盤數(shù)據(jù)庫文件中寫入記錄的標(biāo)準(zhǔn)存儲單元位置信息;步驟240,通過存儲空間狀態(tài)模塊u4記錄標(biāo)準(zhǔn)存儲單元的空間信息;步驟245,通過記錄鏈接模塊u5形成磁盤數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成數(shù)據(jù)庫還原。如圖6所示,利用上述基于光盤的數(shù)據(jù)庫存儲系統(tǒng)將光盤數(shù)據(jù)庫數(shù)據(jù)在磁盤上建立數(shù)據(jù)庫的過程如下步驟310,數(shù)據(jù)庫管理系統(tǒng)通過庫結(jié)構(gòu)生成模塊u8在磁盤存儲裝置中建立磁盤數(shù)據(jù)庫文件;步驟315,數(shù)據(jù)庫管理系統(tǒng)通過記錄拆分模塊u6讀取各光盤上子數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定記錄的記錄號和數(shù)據(jù)量確定各子數(shù)據(jù)庫記錄容量;步驟320,數(shù)據(jù)庫管理系統(tǒng)通過記錄合并模塊119,將需要的記錄從各子數(shù)據(jù)庫中讀取后,寫入磁盤存儲裝置中的數(shù)據(jù)庫文件;步驟325,通過字段結(jié)構(gòu)生成模塊Ul生成記錄的字段結(jié)構(gòu)信息;步驟330,通過記錄索引生成模塊u2生成記錄的索引信息;步驟335,通過存儲空間分配模塊u3記錄標(biāo)準(zhǔn)存儲單元位置信息;步驟340,通過存儲空間狀態(tài)模塊u4記錄標(biāo)準(zhǔn)存儲單元的空間信息;步驟345,通過記錄鏈接模塊u5形成磁盤存儲裝置中數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成光盤數(shù)據(jù)庫數(shù)據(jù)在磁盤存儲裝置中建立數(shù)據(jù)庫。如圖7所示,利用上述基于光盤的數(shù)據(jù)庫存儲系統(tǒng)將磁盤數(shù)據(jù)庫數(shù)據(jù)在光盤上建立數(shù)據(jù)庫的過程如下
步驟410,數(shù)據(jù)庫管理系統(tǒng)通過庫結(jié)構(gòu)生成模塊u8在光盤上建立子數(shù)據(jù)庫文件;步驟415,數(shù)據(jù)庫管理系統(tǒng)通過記錄拆分模塊u6讀取磁盤上磁盤數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定各記錄的存儲容量和存儲位置;步驟420,數(shù)據(jù)庫管理系統(tǒng)通過記錄合并模塊u9,將需要的記錄從磁盤數(shù)據(jù)庫中讀取后,寫入光盤中的數(shù)據(jù)庫文件;步驟425,通過字段結(jié)構(gòu)生成模塊Ul生成記錄的字段結(jié)構(gòu)信息;步驟430,通過記錄索引生成模塊u2生成記錄的索引信息;步驟435,通過存儲空間分配模塊u3記錄標(biāo)準(zhǔn)存儲單元位置信息;
步驟440,通過存儲空間狀態(tài)模塊u4記錄標(biāo)準(zhǔn)存儲單元的空間信息;步驟445,通過記錄鏈接模塊u5形成光盤中子數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成利用磁盤數(shù)據(jù)庫中的數(shù)據(jù)在光盤建立數(shù)據(jù)庫。具體的實(shí)施例I :在可重寫光盤上利用可重寫光盤建立數(shù)據(jù)庫的方法,包括以下步驟步驟I、服務(wù)器直接與光盤驅(qū)動器相連;步驟2、在服務(wù)器上安裝數(shù)據(jù)庫管理系統(tǒng)軟件;步驟3、在配置文件中設(shè)置虛擬光盤驅(qū)動器盤符,MYCD=G :\MYBD=H: \其中MY⑶、MYBD是虛擬光盤驅(qū)動器盤符,G、H是光盤驅(qū)動器盤符。一臺服務(wù)器可以連接多個光盤驅(qū)動器;步驟4、在光盤上創(chuàng)建卷標(biāo),通過擦除可重寫光盤,格式化可重寫光盤,完成創(chuàng)建光盤卷標(biāo);步驟5、在光盤上創(chuàng)建數(shù)據(jù)庫,執(zhí)行指令“MYCD :databasel” ;步驟6、向光盤上的數(shù)據(jù)庫錄入數(shù)據(jù)。具體的實(shí)施例2 :在光盤庫中的光盤上利用可重寫光盤建立數(shù)據(jù)庫的方法,包括以下步驟步驟I、服務(wù)器與光盤庫相連;步驟2、在服務(wù)器上安裝數(shù)據(jù)庫管理系統(tǒng)軟件和光盤庫管理軟件;步驟3、在配置文件中設(shè)置虛擬光盤庫盤符,MYCD=Z :\其中MY⑶是虛擬光盤庫盤符,Z是光盤庫盤符;步驟4、利用光盤庫管理軟件在光盤上創(chuàng)建卷標(biāo)“DVD1” ;步驟5、在光盤庫中的光盤上創(chuàng)建數(shù)據(jù)庫,執(zhí)行指令“MYCD:DVDl\databasel”,步驟6、向光盤庫中光盤上的數(shù)據(jù)庫中錄入數(shù)據(jù)。光盤庫是存放和管理光盤的系統(tǒng),由一個換盤器(機(jī)械手)、多個光盤驅(qū)動器和多個光盤匣組成。光盤庫是一種海量數(shù)據(jù)庫存儲系統(tǒng),支持對多張光盤的光盤庫聯(lián)機(jī)訪問。使用光盤庫存儲數(shù)據(jù)庫,能夠保證數(shù)據(jù)的物理安全,并能方便的進(jìn)行系統(tǒng)擴(kuò)充。根據(jù)需求,可安裝⑶、DVD或BD光盤驅(qū)動器。
具體的實(shí)施例3 :在一次性寫入光盤上建立數(shù)據(jù)庫的方法,包括以下步驟步驟I、服務(wù)器直接與光盤驅(qū)動器相連;步驟2、在服務(wù)器上安裝數(shù)據(jù)庫管理系統(tǒng)軟件步驟3、在配置文件中設(shè)置虛擬光盤盤符,MYCD=G :\MYBD=H: \其中MY⑶、MYBD是虛擬光盤驅(qū)動器盤符,G、H是光盤驅(qū)動器盤符。一臺服務(wù)器可以連接多個光盤驅(qū)動器;
步驟4、在磁盤存儲裝置上創(chuàng)建數(shù)據(jù)庫,執(zhí)行指令“D Adatabasel"; 步驟5、向磁盤存儲裝置上的數(shù)據(jù)庫錄入數(shù)據(jù);步驟6、修改數(shù)據(jù)庫路徑,將數(shù)據(jù)庫路徑D: \改為MYCD,執(zhí)行指令“MYCD databaseI. BAF” ;步驟7、在一次性寫入光盤上創(chuàng)建光盤名稱,將磁盤存儲裝置上已錄入數(shù)據(jù)的數(shù)據(jù)庫刻錄到一次性寫入光盤上。具體的實(shí)施例4 :在光盤庫中的光盤上利用一次性寫入光盤建立數(shù)據(jù)庫的方法,包括以下步驟步驟I、服務(wù)器與光盤庫相連;步驟2、在服務(wù)器上安裝數(shù)據(jù)庫管理系統(tǒng)軟件和光盤庫管理軟件;步驟3、在配置文件中設(shè)置虛擬光盤庫盤符,MYCD=Z :\其中MY⑶是虛擬光盤庫盤符,Z是光盤庫盤符;步驟4、在磁盤存儲裝置上創(chuàng)建數(shù)據(jù)庫,執(zhí)行指令“D Adatabasel";步驟5、向磁盤存儲裝置上的數(shù)據(jù)庫錄入數(shù)據(jù);步驟6、利用光盤庫管理軟件在光盤上創(chuàng)建卷標(biāo)“DVD1” ;步驟7、修改數(shù)據(jù)庫路徑,將數(shù)據(jù)庫路徑D:\改為MY⑶,執(zhí)行指令“MY⑶DVD1\database I,,;步驟8、向光盤庫中的光盤上刻錄數(shù)據(jù)庫。利用本發(fā)明基于光盤的數(shù)據(jù)庫存儲系統(tǒng),可以對存儲在磁盤存儲裝置中的數(shù)據(jù)庫進(jìn)行拆分,可以對存儲在光盤上的數(shù)據(jù)庫進(jìn)行合并。當(dāng)磁盤存儲裝置中的數(shù)據(jù)庫容量大于一個光盤的容量時,可以將它拆分為若干個數(shù)據(jù)庫,使每個庫的容量小于光盤的容量。拆分后生成的若干個小庫可以存儲在多張光盤上,每張光盤上的數(shù)據(jù)庫結(jié)構(gòu)與原數(shù)據(jù)庫相同。具體的實(shí)施例5 :拆分磁盤存儲裝置中數(shù)據(jù)庫建立光盤備份的步驟如下步驟I、數(shù)據(jù)庫管理系統(tǒng)根據(jù)光盤存儲介質(zhì)的容量,讀取磁盤存儲裝置中數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),計算各記錄的容量,確定各子數(shù)據(jù)庫起始記錄號和終止記錄號,各子數(shù)據(jù)庫的記錄數(shù)量;步驟2、在光盤上分別建立對應(yīng)的子數(shù)據(jù)庫文件;步驟3、將各子數(shù)據(jù)庫對應(yīng)的起始記錄號和終止記錄號之間的記錄順序?qū)懭雽?yīng)光盤上的子數(shù)據(jù)庫文件,寫入相應(yīng)的數(shù)據(jù)庫特征數(shù)據(jù),完成數(shù)據(jù)庫備份;
各備份光盤上的子數(shù)據(jù)庫與原數(shù)據(jù)庫庫結(jié)構(gòu)相同,子數(shù)據(jù)庫中的記錄所對應(yīng)具體數(shù)據(jù)包含在本數(shù)據(jù)庫文件中。具體的實(shí)施例6 :進(jìn)行數(shù)據(jù)庫合并與還原的步驟如下步驟I、根據(jù)各光盤上子數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定記錄的最小記錄號和最大記錄號,確定各子數(shù)據(jù)庫記錄容量;步驟2、在磁盤存儲裝置中建立數(shù)據(jù)庫文件;步驟3、根據(jù)各子數(shù)據(jù)庫記錄號大小,將子數(shù)據(jù)庫中的記錄順序?qū)懭氪疟P存儲裝置中的數(shù)據(jù)庫文件,將各子數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù)更新,完成數(shù)據(jù)庫合并與還原。以上所述的實(shí)施例僅僅是對本發(fā)明的優(yōu)選實(shí)施方式進(jìn)行描述,并非對本發(fā)明的范圍進(jìn)行限定,在不脫離本發(fā)明設(shè)計精神的前提下,本領(lǐng)域普通技術(shù)人員對本發(fā)明的技術(shù)方 案作出的各種變形和改進(jìn),均應(yīng)落入本發(fā)明權(quán)利要求書確定的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種基于光盤的數(shù)據(jù)庫存儲系統(tǒng),包括安裝在服務(wù)器(server)上的數(shù)據(jù)庫管理系統(tǒng)(dm),與服務(wù)器數(shù)據(jù)連接的磁盤存儲裝置和光盤存儲裝置,以及建立在磁盤存儲裝置(diskstorage)上的磁盤數(shù)據(jù)庫(db),數(shù)據(jù)庫管理系統(tǒng)(dm)用于響應(yīng)數(shù)據(jù)請求,完成存儲裝置的數(shù)據(jù)庫管理和數(shù)據(jù)管理,其特征在于數(shù)據(jù)庫管理系統(tǒng)(dm)包括字段結(jié)構(gòu)生成模塊(uI),記錄索引生成模塊(u2 ),存儲空間分配模塊(u3 ),存儲空間狀態(tài)模塊(u4 ),記錄鏈接模塊(u5 ),記錄拆分模塊(u6 ),光盤建庫模塊(u7 ), 字段結(jié)構(gòu)生成模塊U1),讀取數(shù)據(jù)庫中每一條記錄的字段結(jié)構(gòu)信息,包括記錄中各字段的數(shù)據(jù)類型、長度,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)(dm)中; 記錄索引生成模塊U2),記錄數(shù)據(jù)庫中每一條記錄的索引信息,包括記錄中各字段的修改時間、修改內(nèi)容,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)(dm)中; 存儲空間分配模塊U3),記錄為每一條記錄所分配的標(biāo)準(zhǔn)存儲單元在數(shù)據(jù)庫文件中的位置信息,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)(dm)中; 存儲空間狀態(tài)模塊U4),記錄數(shù)據(jù)庫文件中已分配標(biāo)準(zhǔn)存儲單元中未使用的空間信息,并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)(dm)中; 記錄鏈接模塊U5),將數(shù)據(jù)庫中各記錄的字段結(jié)構(gòu)信息、索引信息、標(biāo)準(zhǔn)存儲單元的位置信息和空間信息合并,形成數(shù)據(jù)庫特征數(shù)據(jù),并寫入數(shù)據(jù)庫文件或數(shù)據(jù)庫管理系統(tǒng)(dm)中; 記錄拆分模塊U6),根據(jù)數(shù)據(jù)庫管理系統(tǒng)(dm)指令進(jìn)行數(shù)據(jù)庫中記錄拆分,數(shù)據(jù)拆分以記錄為單位進(jìn)行,讀取數(shù)據(jù)庫特征數(shù)據(jù),確定記錄中每個字段的數(shù)據(jù)位置和數(shù)據(jù)量,標(biāo)記出符合指令參數(shù)的記錄,并將標(biāo)記信息寫入在數(shù)據(jù)庫(db)文件或數(shù)據(jù)庫管理系統(tǒng)(dm)中; 光盤建庫模塊U7),用于將磁盤數(shù)據(jù)庫(db)中與光盤容量匹配的記錄寫入數(shù)據(jù)庫管理系統(tǒng)(dm)在光盤上建立的子數(shù)據(jù)庫(dbl)文件,并通過數(shù)據(jù)庫管理系統(tǒng)(dm)生成對應(yīng)記錄的字段結(jié)構(gòu)信息、索引信息,記錄標(biāo)準(zhǔn)存儲單元位置信息和空間信息,形成子數(shù)據(jù)庫(dbl)的數(shù)據(jù)庫特征數(shù)據(jù)。
2.如權(quán)利要求I所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng),其特征在于數(shù)據(jù)庫管理系統(tǒng)(dm)還包括庫結(jié)構(gòu)生成模塊(u8),將數(shù)據(jù)庫的庫結(jié)構(gòu)形成獨(dú)立數(shù)據(jù)文件,數(shù)據(jù)庫管理系統(tǒng)(dm)根據(jù)獨(dú)立數(shù)據(jù)文件在光盤上建立相同庫結(jié)構(gòu)的子數(shù)據(jù)庫(dbl),或在其他磁盤存儲裝置(diskstorage)上建立相同庫結(jié)構(gòu)的磁盤數(shù)據(jù)庫(db)。
3.如權(quán)利要求I或2所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng),其特征在于數(shù)據(jù)庫管理系統(tǒng)(dm)還包括記錄合并模塊(u9),根據(jù)數(shù)據(jù)庫管理系統(tǒng)(dm)指令,將光盤上子數(shù)據(jù)庫(dbl)中的記錄合并到磁盤存儲裝置(diskstorage)上的磁盤數(shù)據(jù)庫(db)中,并通過數(shù)據(jù)庫管理系統(tǒng)(dm)生成對應(yīng)記錄的字段結(jié)構(gòu)信息、索引信息,以及記錄標(biāo)準(zhǔn)存儲單元位置信息和空間信息,形成磁盤數(shù)據(jù)庫(db )的數(shù)據(jù)庫特征數(shù)據(jù)。
4.利用權(quán)利要求I至3任一所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法,其特征在于進(jìn)行磁盤數(shù)據(jù)庫光盤備份的步驟如下 步驟110,數(shù)據(jù)庫管理系統(tǒng)獲取光盤存儲介質(zhì)的容量參數(shù); 步驟115,通過記錄拆分模塊(u6)讀取磁盤存儲裝置中磁盤數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),計算各記錄的容量,確定各子數(shù)據(jù)庫起始記錄號和終止記錄號,各子數(shù)據(jù)庫的記錄數(shù)量;步驟120,、通過庫結(jié)構(gòu)生成模塊(u8)在光盤上分別建立相同庫結(jié)構(gòu)的子數(shù)據(jù)庫文件;步驟125,通過光盤建庫模塊(u7)將各子數(shù)據(jù)庫對應(yīng)的起始記錄號和終止記錄號之間的記錄順序?qū)懭雽?yīng)光盤上的子數(shù)據(jù)庫文件中; 步驟130,通過字段結(jié)構(gòu)生成模塊(ul)向各子數(shù)據(jù)庫文件中寫入相應(yīng)記錄的字段結(jié)構(gòu)信息; 步驟135,通過記錄索引生成模塊(u2)向各子數(shù)據(jù)庫文件中寫入相應(yīng)記錄的索引信息; 步驟140,通過存儲空間分配模塊(u3)向各子數(shù)據(jù)庫文件中寫入相應(yīng)記錄的標(biāo)準(zhǔn)存儲單元位置信息; 步驟145,通過存儲空間狀態(tài)模塊(u4)記錄標(biāo)準(zhǔn)存儲單元的空間信息; 步驟150,通過記錄鏈接模塊(u5)形成相應(yīng)子數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成數(shù)據(jù)庫備份。
5.利用權(quán)利要求3所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法,其特征在于進(jìn)行光盤數(shù)據(jù)庫在磁盤存儲裝置中還原的步驟如下 步驟210,數(shù)據(jù)庫管理系統(tǒng)通過庫結(jié)構(gòu)生成模塊(u8)在磁盤存儲裝置中建立磁盤數(shù)據(jù)庫文件; 步驟215,數(shù)據(jù)庫管理系統(tǒng)通過記錄拆分模塊(u6)讀取各光盤上子數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定記錄的最小記錄號和最大記錄號,確定各子數(shù)據(jù)庫記錄容量、記錄數(shù)量; 步驟220,數(shù)據(jù)庫管理系統(tǒng)通過記錄合并模塊(u9),根據(jù)各子數(shù)據(jù)庫記錄號大小,將各子數(shù)據(jù)庫中的記錄順序?qū)懭氪疟P存儲裝置中的磁盤數(shù)據(jù)庫文件中; 步驟225,通過字段結(jié)構(gòu)生成模塊(ul)向磁盤數(shù)據(jù)庫文件中寫入記錄的字段結(jié)構(gòu)信息; 步驟230,通過記錄索引生成模塊U2)向磁盤數(shù)據(jù)庫文件中寫入記錄的索引信息;步驟235,通過存儲空間分配模塊U3)向磁盤數(shù)據(jù)庫文件中寫入記錄的標(biāo)準(zhǔn)存儲單元位置信息; 步驟240,通過存儲空間狀態(tài)模塊(u4)記錄標(biāo)準(zhǔn)存儲單元的空間信息; 步驟245,通過記錄鏈接模塊(u5)形成磁盤數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成數(shù)據(jù)庫還原。
6.利用權(quán)利要求3所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法,其特征在于利用光盤數(shù)據(jù)庫數(shù)據(jù)在磁盤上建立數(shù)據(jù)庫的步驟如下 步驟310,數(shù)據(jù)庫管理系統(tǒng)通過庫結(jié)構(gòu)生成模塊(u8)在磁盤存儲裝置中建立磁盤數(shù)據(jù)庫文件; 步驟315,數(shù)據(jù)庫管理系統(tǒng)通過記錄拆分模塊(u6)讀取各光盤上子數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定記錄的記錄號和數(shù)據(jù)量確定各子數(shù)據(jù)庫記錄容量; 步驟320,數(shù)據(jù)庫管理系統(tǒng)通過記錄合并模塊U9),將需要的記錄從各子數(shù)據(jù)庫中讀取后,寫入磁盤存儲裝置中的數(shù)據(jù)庫文件; 步驟325,通過字段結(jié)構(gòu)生成模塊(ul)生成記錄的字段結(jié)構(gòu)信息; 步驟330,通過記錄索引生成模塊(u2)生成記錄的索引信息; 步驟335,通過存儲空間分配模塊(u3)記錄標(biāo)準(zhǔn)存儲單元位置信息;步驟340,通過存儲空間狀態(tài)模塊(u4)記錄標(biāo)準(zhǔn)存儲單元的空間信息; 步驟345,通過記錄鏈接模塊(u5)形成磁盤存儲裝置中數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成光盤數(shù)據(jù)庫數(shù)據(jù)在磁盤存儲裝置中建立數(shù)據(jù)庫。
7.利用權(quán)利要求3所述的基于光盤的數(shù)據(jù)庫存儲系統(tǒng)進(jìn)行數(shù)據(jù)處理的方法,其特征在于利用磁盤數(shù)據(jù)庫數(shù)據(jù)在光盤上建立數(shù)據(jù)庫的步驟如下 步驟410,數(shù)據(jù)庫管理系統(tǒng)通過庫結(jié)構(gòu)生成模塊(u8)在光盤上建立子數(shù)據(jù)庫文件;步驟415,數(shù)據(jù)庫管理系統(tǒng)通過記錄拆分模塊(u6)讀取磁盤上磁盤數(shù)據(jù)庫中數(shù)據(jù)庫特征數(shù)據(jù),確定各記錄的存儲容量和存儲位置; 步驟420,數(shù)據(jù)庫管理系統(tǒng)通過記錄合并模塊U9),將需要的記錄從磁盤數(shù)據(jù)庫中讀取后,寫入光盤中的數(shù)據(jù)庫文件; 步驟425,通過字段結(jié)構(gòu)生成模塊(ul)生成記錄的字段結(jié)構(gòu)信息; 步驟430,通過記錄索引生成模塊(u2)生成記錄的索引信息; 步驟435,通過存儲空間分配模塊(u3)記錄標(biāo)準(zhǔn)存儲單元位置信息; 步驟440,通過存儲空間狀態(tài)模塊(u4)記錄標(biāo)準(zhǔn)存儲單元的空間信息; 步驟445,通過記錄鏈接模塊(u5)形成光盤中子數(shù)據(jù)庫的數(shù)據(jù)庫特征數(shù)據(jù),完成利用磁盤數(shù)據(jù)庫中的數(shù)據(jù)在光盤建立數(shù)據(jù)庫。
全文摘要
一種基于光盤的數(shù)據(jù)庫存儲系統(tǒng),包括安裝在服務(wù)器上的數(shù)據(jù)庫管理系統(tǒng),與服務(wù)器數(shù)據(jù)連接的磁盤存儲裝置和光盤存儲裝置,數(shù)據(jù)庫管理系統(tǒng)用于響應(yīng)數(shù)據(jù)請求,完成數(shù)據(jù)庫管理和數(shù)據(jù)管理,數(shù)據(jù)庫建立在磁盤存儲裝置上,其中數(shù)據(jù)庫管理系統(tǒng)包括字段結(jié)構(gòu)生成模塊,記錄索引生成模塊,存儲空間分配模塊,存儲空間狀態(tài)模塊,記錄鏈接模塊,記錄拆分模塊,光盤建庫模塊,本發(fā)明使得數(shù)據(jù)庫在備份過程中可以保持?jǐn)?shù)據(jù)的完整性,每一個包含子數(shù)據(jù)庫的光盤都可以接受數(shù)據(jù)庫管理系統(tǒng)的管理,作為正常的數(shù)據(jù)源,實(shí)現(xiàn)數(shù)據(jù)庫利用磁盤存儲裝置和光盤存儲裝置進(jìn)行分級存儲。還包括利用本發(fā)明的數(shù)據(jù)庫備份、還原方法。
文檔編號G06F17/30GK102968460SQ201210431169
公開日2013年3月13日 申請日期2012年11月1日 優(yōu)先權(quán)日2012年11月1日
發(fā)明者陶光毅, 練亞純 申請人:陶光毅, 練亞純, 練子川