專利名稱:一種數(shù)據(jù)備份方法和數(shù)據(jù)備份裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電信領(lǐng)域,尤其涉及一種數(shù)據(jù)備份方法和數(shù)據(jù)備份裝置。
背景技術(shù):
為了簡化數(shù)據(jù)庫大表的管理,目前對數(shù)據(jù)庫大表設(shè)置分區(qū)來管理。分區(qū)其實就是 將表分離在若干不同的數(shù)據(jù)文件上,用分而治之的方法來支撐無限膨脹的大表,給大表在 物理一級的可管理性。將大表分割成較小的分區(qū)可以改善表的維護、備份、恢復(fù)、事務(wù)及查 詢性能。運營支撐系統(tǒng)(Operational Support System, OSS)數(shù)據(jù)庫中存儲了所有通話詳 單,如果按照100萬用戶的現(xiàn)場,詳單表的數(shù)據(jù)量都是在“億”級,使用Delete命令是無法 刪除的,因此所有詳單表都是按照分區(qū)表的方式建立,按照通話時間的月份進行分區(qū),也就 是說我們看見的詳單表在物理上是按照月份分開存放的,這樣在查詢、統(tǒng)計、數(shù)據(jù)庫維護上 都帶來便利,但是新分區(qū)需要人工提前建立,否則影響應(yīng)用正常運行,分區(qū)建立操作較為復(fù) 雜,對用戶的使用造成不便。
發(fā)明內(nèi)容
鑒于現(xiàn)有技術(shù)存在的問題,本發(fā)明實施例提出一種數(shù)據(jù)備份方法和數(shù)據(jù)備份裝 置,可以簡化用戶的操作,方便用戶使用。為了解決上述技術(shù)問題,本發(fā)明實施例提出一種數(shù)據(jù)備份方法,包括獲取用戶設(shè)置的配置信息和配置數(shù)據(jù)信息,所述配置信息包括配置標識信息、備 份類型信息、備份描述信息和數(shù)據(jù)保存時間信息,所述配置數(shù)據(jù)信息包括數(shù)據(jù)表名稱信息, 索引信息;根據(jù)所述配置信息和所述配置數(shù)據(jù)信息獲取需要備份的備份數(shù)據(jù)表;獲取所述需要備份的數(shù)據(jù)表的關(guān)聯(lián)信息;根據(jù)所述關(guān)聯(lián)信息獲取與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表;對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行備份,并在備份后刪除所述備份數(shù)據(jù)表 和所述關(guān)聯(lián)數(shù)據(jù)表。相應(yīng)地,本發(fā)明實施示例還提出一種數(shù)據(jù)備份裝置,用于存儲用戶設(shè)置的配置信 息和配置數(shù)據(jù)信息的存儲模塊,還包括配置信息獲取模塊,用于獲取存儲模塊中用戶設(shè)置的配置信息和配置數(shù)據(jù)信息, 所述配置信息包括配置標識信息、備份類型信息、備份描述信息和數(shù)據(jù)保存時間信息,所述 配置數(shù)據(jù)信息包括數(shù)據(jù)表名稱信息,索引信息;備份數(shù)據(jù)表獲取模塊,根據(jù)所述配置信息獲取模塊獲取的配置信息和所述配置數(shù) 據(jù)信息獲取需要備份的備份數(shù)據(jù)表;關(guān)聯(lián)信息獲取模塊,獲取所述備份數(shù)據(jù)表獲取模塊得到的備份的數(shù)據(jù)表的關(guān)聯(lián)信 息;關(guān)聯(lián)數(shù)據(jù)表獲取模塊,根據(jù)所述關(guān)聯(lián)信息獲取模塊獲取的關(guān)聯(lián)信息獲取與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表;備份模塊,對所述備份數(shù)據(jù)表獲取模塊獲取的備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表獲取 模塊獲取的關(guān)聯(lián)數(shù)據(jù)表進行備份,并在備份后刪除所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表。實施本發(fā)明實施例,通過獲取存儲模塊中用戶設(shè)置的配置信息和配置數(shù)據(jù)信息, 根據(jù)所述配置信息和所述配置數(shù)據(jù)信息獲取需要備份的備份數(shù)據(jù)表獲取所述需要備份的 數(shù)據(jù)表的關(guān)聯(lián)信息;根據(jù)所述關(guān)聯(lián)信息獲取與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù) 表;對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行備份,并在備份后刪除所述備份數(shù)據(jù)表和所 述關(guān)聯(lián)數(shù)據(jù)表,即可自動實現(xiàn)數(shù)據(jù)表的備份刪除,無須用戶建立分區(qū)或人工干預(yù),從而簡化 用戶的操作,方便用戶使用。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可 以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明實施中數(shù)據(jù)備份方法的流程圖;圖2是本發(fā)明實施中數(shù)據(jù)備份裝置的結(jié)構(gòu)原理圖。
具體實施例方式本發(fā)明實施例提出一種數(shù)據(jù)備份方法和數(shù)據(jù)備份裝置,可以簡化用戶的操作,方 便用戶使用。圖1是本發(fā)明實施中數(shù)據(jù)備份方法的流程圖,本發(fā)明實施中數(shù)據(jù)備份方法包括步驟101,獲取用戶設(shè)置的配置信息和配置數(shù)據(jù)信息,所述配置信息包括配置標識 信息、備份類型信息、備份描述信息和數(shù)據(jù)保存時間信息,所述配置數(shù)據(jù)信息包括數(shù)據(jù)表名 稱信息,索引信息;此處,配置信息和配置數(shù)據(jù)信息是運行參數(shù)配置表,允許用戶自定義的運行參數(shù), 以及保留數(shù)據(jù)的最少時間。配置數(shù)據(jù)信息是配置信息的子表,規(guī)定當數(shù)據(jù)備份是按照配置 信息定義的參數(shù)運行時,應(yīng)用程序具體操作那些表,按照什么條件進行備份刪除數(shù)據(jù)。如此 類推,數(shù)據(jù)備份時會根據(jù)用戶輸入的參數(shù),匹配配置信息,從而找到配置數(shù)據(jù)信息,也找到 需要具體操作的對象和操作條件。當然這些初始化數(shù)據(jù)需要熟悉業(yè)務(wù)的人維護,也就是說, 如果數(shù)據(jù)備份時是給OSS使用,那么需要對OSS數(shù)據(jù)模型熟悉的工程師建立初始化數(shù)據(jù);如 果給其他系統(tǒng)使用,那么需要對其他系統(tǒng)數(shù)據(jù)模型熟悉的工程師建立初始化數(shù)據(jù)。通過靈 活的配置,數(shù)據(jù)備份能夠根據(jù)為不同系統(tǒng)完成備份刪除操作。步驟102,根據(jù)所述配置信息和所述配置數(shù)據(jù)信息獲取需要備份的備份數(shù)據(jù)表;步驟103,獲取所述需要備份的數(shù)據(jù)表的關(guān)聯(lián)信息;步驟104,根據(jù)所述關(guān)聯(lián)信息獲取與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù) 表;此處,數(shù)據(jù)備份是通過參數(shù)配置表找到需要操作的對象后,還不能立即根據(jù)條件 備份刪除數(shù)據(jù),因為在數(shù)據(jù)庫中,各個表之間的數(shù)據(jù)是互相關(guān)聯(lián)了,如果要刪除備份數(shù)據(jù)表,根據(jù)數(shù)據(jù)關(guān)聯(lián)性,首先需要刪除關(guān)聯(lián)數(shù)據(jù)表。具體實施時,可以根據(jù)所述關(guān)聯(lián)信息通過 遞歸算法獲取所有與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表,可以通過SQL語句可以 查找指定表都被哪些子表關(guān)聯(lián)。數(shù)據(jù)備份在處理第一層表時,根據(jù)參數(shù)配置表配置數(shù)據(jù)信 息的條件,以及用戶運行時輸入的時間范圍,查找第一層表的所有符合條件的記錄,將符合 要求的記錄的主鍵ID存放在一個新建立的臨時表1,如果第一層表有關(guān)聯(lián)的子表,則將臨 時表1通過遞歸函數(shù)傳遞到第二層表,第二層表根據(jù)臨時表1查找所有符合條件的記錄,將 符合要求的記錄的主鍵ID存放在一個新建立的臨時表2,然后再傳遞到第三層表,如此類 推,到達最后一層表時,就可以進行備份刪除操作。如此類推,如此類推,數(shù)據(jù)備份就是通過 以上方式對數(shù)據(jù)表進行自動搜索,自動從低到高遍歷關(guān)聯(lián)關(guān)系。步驟105,對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行備份,并在備份后刪除所述備 份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表。此處,具體實施時,根據(jù)時間范圍對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行備 份。DataBackup在備份方面遵循如下原則1、以備份時間作為目錄,例如備份2001_01_01 到2001-02-01之間的所有數(shù)據(jù),目錄名稱為20010101-20010201 ;每個表生成一個或多 個文件,文件命名規(guī)則為“表名時間”,例如0VERPAY20010101-20010201. txt ;2、如果文件 記錄數(shù)大于配置文件參數(shù),生成子目錄,文件名添加順序號,例如子目錄OVERPAY,文件名 0VERPAY20010101-20010201-00x. txt ;3、文件內(nèi)容按表結(jié)構(gòu)字段順序排列,包含字段名稱 (用#開頭),各內(nèi)容以“,”分隔,方便日后再次將數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫根據(jù)備份先后順序,將 表名生成一個文件,也是方便日后再次將數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫。在備份成功后進行刪除操作, 如果遇到數(shù)據(jù)量超大,還可以自動設(shè)定專用的回滾段。圖2是本發(fā)明實施中數(shù)據(jù)備份裝置的結(jié)構(gòu)原理圖,本發(fā)明實施中數(shù)據(jù)備份裝置包 括存儲模塊21,用于存儲用戶設(shè)置的配置信息和配置數(shù)據(jù)信息;配置信息獲取模塊22,用于獲取存儲模塊21中用戶設(shè)置的配置信息和配置數(shù)據(jù) 信息,所述配置信息包括配置標識信息、備份類型信息、備份描述信息和數(shù)據(jù)保存時間信 息,所述配置數(shù)據(jù)信息包括數(shù)據(jù)表名稱信息,索引信息;此處,配置信息和配置數(shù)據(jù)信息是運行參數(shù)配置表,允許用戶自定義的運行參數(shù), 以及保留數(shù)據(jù)的最少時間。配置數(shù)據(jù)信息是配置信息的子表,規(guī)定當數(shù)據(jù)備份是按照配置 信息定義的參數(shù)運行時,應(yīng)用程序具體操作那些表,按照什么條件進行備份刪除數(shù)據(jù)。如此 類推,數(shù)據(jù)備份時會根據(jù)用戶輸入的參數(shù),匹配配置信息,從而找到配置數(shù)據(jù)信息,也找到 需要具體操作的對象和操作條件。當然這些初始化數(shù)據(jù)需要熟悉業(yè)務(wù)的人維護,也就是說, 如果數(shù)據(jù)備份時是給OSS使用,那么需要對OSS數(shù)據(jù)模型熟悉的工程師建立初始化數(shù)據(jù);如 果給其他系統(tǒng)使用,那么需要對其他系統(tǒng)數(shù)據(jù)模型熟悉的工程師建立初始化數(shù)據(jù)。通過靈 活的配置,數(shù)據(jù)備份能夠根據(jù)為不同系統(tǒng)完成備份刪除操作。備份數(shù)據(jù)表獲取模塊23,根據(jù)所述配置信息獲取模塊22獲取的配置信息和所述 配置數(shù)據(jù)信息獲取需要備份的備份數(shù)據(jù)表;關(guān)聯(lián)信息獲取模塊M,獲取所述備份數(shù)據(jù)表獲取模塊23得到的備份的數(shù)據(jù)表的 關(guān)聯(lián)信息;關(guān)聯(lián)數(shù)據(jù)表獲取模塊25,根據(jù)所述關(guān)聯(lián)信息獲取模塊M獲取的關(guān)聯(lián)信息獲取與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表;關(guān)聯(lián)數(shù)據(jù)表獲取模塊25具體還包括遞歸單元251,用于根據(jù)所述關(guān)聯(lián)信息通過遞歸算法獲取所有與所述需要備份的 數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表。此處,數(shù)據(jù)備份是通過參數(shù)配置表找到需要操作的對象后,還不能立即根據(jù)條件 備份刪除數(shù)據(jù),因為在數(shù)據(jù)庫中,各個表之間的數(shù)據(jù)是互相關(guān)聯(lián)了,如果要刪除備份數(shù)據(jù) 表,根據(jù)數(shù)據(jù)關(guān)聯(lián)性,首先需要刪除關(guān)聯(lián)數(shù)據(jù)表。具體實施時,可以根據(jù)所述關(guān)聯(lián)信息通過 遞歸算法獲取所有與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表,可以通過SQL語句可以 查找指定表都被哪些子表關(guān)聯(lián)。數(shù)據(jù)備份在處理第一層表時,根據(jù)參數(shù)配置表配置數(shù)據(jù)信 息的條件,以及用戶運行時輸入的時間范圍,查找第一層表的所有符合條件的記錄,將符合 要求的記錄的主鍵ID存放在一個新建立的臨時表1,如果第一層表有關(guān)聯(lián)的子表,則將臨 時表1通過遞歸函數(shù)傳遞到第二層表,第二層表根據(jù)臨時表1查找所有符合條件的記錄,將 符合要求的記錄的主鍵ID存放在一個新建立的臨時表2,然后再傳遞到第三層表,如此類 推,到達最后一層表時,就可以進行備份刪除操作。如此類推,如此類推,數(shù)據(jù)備份就是通過 以上方式對數(shù)據(jù)表進行自動搜索,自動從低到高遍歷關(guān)聯(lián)關(guān)系。備份模塊沈,對所述備份數(shù)據(jù)表獲取模塊23獲取的備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù) 表獲取模塊25獲取的關(guān)聯(lián)數(shù)據(jù)表進行備份,并在備份后刪除所述備份數(shù)據(jù)表和所述關(guān)聯(lián) 數(shù)據(jù)表。此處,具體實施時,備份模塊沈包括時間備份單元沈1,用于根據(jù)時間范圍對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行 備份。此處,以備份時間作為目錄,例如備份2001-01-01到2001-02-01之間的所有數(shù) 據(jù),目錄名稱為20010101-20010201 ;每個表生成一個或多個文件,文件命名規(guī)則為“表名 + 時間”,例如:0VERPAY20010101-20010201. txt。備份模塊沈還可以設(shè)置有如下規(guī)則如果文件記錄數(shù)大于配置文件參數(shù),生成子 目錄,文件名添加順序號,例如子目錄OVERPAY,文件名0VERPAY20010101-20010201-00x. txt ;文件內(nèi)容按表結(jié)構(gòu)字段順序排列,包含字段名稱(用#開頭),各內(nèi)容以“,”分隔,方 便日后再次將數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫根據(jù)備份先后順序,將表名生成一個文件,也是方使日后 再次將數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫。在備份成功后進行刪除操作,如果遇到數(shù)據(jù)量超大,還可以自動 設(shè)定專用的回滾段。實施本發(fā)明實施例,通過獲取存儲模塊中用戶設(shè)置的配置信息和配置數(shù)據(jù)信息, 根據(jù)所述配置信息和所述配置數(shù)據(jù)信息獲取需要備份的備份數(shù)據(jù)表獲取所述需要備份的 數(shù)據(jù)表的關(guān)聯(lián)信息;根據(jù)所述關(guān)聯(lián)信息獲取與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù) 表;對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行備份,并在備份后刪除所述備份數(shù)據(jù)表和所 述關(guān)聯(lián)數(shù)據(jù)表,即可自動實現(xiàn)數(shù)據(jù)表的備份刪除,無須用戶建立分區(qū)或人工干預(yù),從而簡化 用戶的操作,方便用戶使用。以上所揭露的僅為本發(fā)明一種較佳實施例而已,當然不能以此來限定本發(fā)明之權(quán) 利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
權(quán)利要求
1.一種數(shù)據(jù)備份方法,其特征在于,包括獲取用戶設(shè)置的配置信息和配置數(shù)據(jù)信息,所述配置信息包括配置標識信息、備份類 型信息、備份描述信息和數(shù)據(jù)保存時間信息,所述配置數(shù)據(jù)信息包括數(shù)據(jù)表名稱信息,索引 fn息;根據(jù)所述配置信息和所述配置數(shù)據(jù)信息獲取需要備份的備份數(shù)據(jù)表; 獲取所述需要備份的數(shù)據(jù)表的關(guān)聯(lián)信息;根據(jù)所述關(guān)聯(lián)信息獲取與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表; 對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行備份,并在備份后刪除所述備份數(shù)據(jù)表和所 述關(guān)聯(lián)數(shù)據(jù)表。
2.如權(quán)利要求1所述的數(shù)據(jù)備份方法,其特征在于,所述根據(jù)所述關(guān)聯(lián)信息獲取與所 述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表步驟具體為根據(jù)所述關(guān)聯(lián)信息通過遞歸算法獲取所有與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù) 據(jù)表。
3.如權(quán)利要求2所述的數(shù)據(jù)備份方法,其特征在于,所述對所述備份數(shù)據(jù)表和所述關(guān) 聯(lián)數(shù)據(jù)表進行備份步驟具體為根據(jù)時間范圍對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行備份。
4.一種數(shù)據(jù)備份裝置,用于存儲用戶設(shè)置的配置信息和配置數(shù)據(jù)信息的存儲模塊,其 特征在于,包括配置信息獲取模塊,用于獲取存儲模塊中用戶設(shè)置的配置信息和配置數(shù)據(jù)信息,所述 配置信息包括配置標識信息、備份類型信息、備份描述信息和數(shù)據(jù)保存時間信息,所述配置 數(shù)據(jù)信息包括數(shù)據(jù)表名稱信息,索引信息;備份數(shù)據(jù)表獲取模塊,根據(jù)所述配置信息獲取模塊獲取的配置信息和所述配置數(shù)據(jù)信 息獲取需要備份的備份數(shù)據(jù)表;關(guān)聯(lián)信息獲取模塊,獲取所述備份數(shù)據(jù)表獲取模塊得到的備份的數(shù)據(jù)表的關(guān)聯(lián)信息; 關(guān)聯(lián)數(shù)據(jù)表獲取模塊,根據(jù)所述關(guān)聯(lián)信息獲取模塊獲取的關(guān)聯(lián)信息獲取與所述需要備 份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表;備份模塊,對所述備份數(shù)據(jù)表獲取模塊獲取的備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表獲取模塊 獲取的關(guān)聯(lián)數(shù)據(jù)表進行備份,并在備份后刪除所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表。
5.如權(quán)利要求4所述的數(shù)據(jù)備份裝置,其特征在于,所述關(guān)聯(lián)數(shù)據(jù)表獲取模塊包括 遞歸單元,用于根據(jù)所述關(guān)聯(lián)信息通過遞歸算法獲取所有與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表。
6.如權(quán)利要求5所述的數(shù)據(jù)備份裝置,其特征在于,所述備份模塊包括 時間備份單元,用于根據(jù)時間范圍對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行備份。
全文摘要
本發(fā)明實施例提出一種數(shù)據(jù)備份方法,包括獲取用戶設(shè)置的配置信息和配置數(shù)據(jù)信息,所述配置信息包括配置標識信息、備份類型信息、備份描述信息和數(shù)據(jù)保存時間信息,所述配置數(shù)據(jù)信息包括數(shù)據(jù)表名稱信息,索引信息;根據(jù)所述配置信息和所述配置數(shù)據(jù)信息獲取需要備份的備份數(shù)據(jù)表;獲取所述需要備份的數(shù)據(jù)表的關(guān)聯(lián)信息;根據(jù)所述關(guān)聯(lián)信息獲取與所述需要備份的數(shù)據(jù)表相關(guān)聯(lián)的關(guān)聯(lián)數(shù)據(jù)表;對所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表進行備份,并在備份后刪除所述備份數(shù)據(jù)表和所述關(guān)聯(lián)數(shù)據(jù)表。相應(yīng)地,本發(fā)明實施例提出還提出一種數(shù)據(jù)備份裝置。實施本發(fā)明實施例,可以簡化用戶的操作,方便用戶使用。
文檔編號G06F17/30GK102096669SQ20091021377
公開日2011年6月15日 申請日期2009年12月14日 優(yōu)先權(quán)日2009年12月14日
發(fā)明者何錦輝 申請人:深圳速浪數(shù)字技術(shù)有限公司