本發(fā)明涉及通信技術(shù)的業(yè)務(wù)運(yùn)營支撐系統(tǒng)領(lǐng)域,尤其涉及一種基于內(nèi)存數(shù)據(jù)庫的斷點(diǎn)處理方法及系統(tǒng)。
背景技術(shù):
電信計(jì)費(fèi)系統(tǒng)中的批價模塊,記錄程序斷點(diǎn)的傳統(tǒng)方法是:將斷點(diǎn)寫入斷點(diǎn)文件。但是,這種處理方案存在兩個主要缺點(diǎn):一是在正常處理業(yè)務(wù)流程中,當(dāng)前應(yīng)用異常停止后,其他應(yīng)用無法及時接管;另外程序斷點(diǎn)回滾存在重復(fù)回滾問題。斷點(diǎn):是指在文件業(yè)務(wù)記錄處理過程中出現(xiàn)程序異常停止問題后、文件業(yè)務(wù)記錄的處理結(jié)果信息。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是:在云化系統(tǒng)中當(dāng)前應(yīng)用異常停止后備用應(yīng)用無法接管正在處理的業(yè)務(wù)的問題。
為解決以上技術(shù)問題,本發(fā)明提供了一種基于內(nèi)存數(shù)據(jù)庫的斷點(diǎn)處理方法及系統(tǒng)。
本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種基于內(nèi)存數(shù)據(jù)庫的斷點(diǎn)處理方法,該方法包括以下步驟:
步驟1:在數(shù)據(jù)庫中創(chuàng)建文件斷點(diǎn)表、業(yè)務(wù)記錄斷點(diǎn)表及映射表;
步驟2:讀取數(shù)據(jù)庫中文件,將讀取文件過程中的文件級斷點(diǎn)信息插入文件斷點(diǎn)表;
步驟3:讀取并處理文件中的業(yè)務(wù)記錄,將處理每條業(yè)務(wù)記錄時的記錄級斷點(diǎn)信息插入業(yè)務(wù)記錄斷點(diǎn)表,將文件與業(yè)務(wù)記錄的映射信息插入映射表,記錄級斷點(diǎn)信息與業(yè)務(wù)處理的進(jìn)程信息保持同一事務(wù);
步驟4:如果將文件遷移至文件出口目錄,則將遷移文件過程中的文件級斷點(diǎn)信息插入文件斷點(diǎn)表;
步驟5:判斷文件斷點(diǎn)表中是否記錄了讀取文件過程中的文件級斷點(diǎn)信息和遷移文件過程中的文件級斷點(diǎn)信息,若是,執(zhí)行步驟6,若只記錄了讀取文件過程中的文件級斷點(diǎn)信息,則執(zhí)行步驟7;
步驟6:將文件遷移完成的文件級斷點(diǎn)信息插入文件斷點(diǎn)表,刪除文件斷點(diǎn)表、業(yè)務(wù)記錄斷點(diǎn)表和映射表,結(jié)束操作;
步驟7:根據(jù)映射表中的每條映射信息,查詢業(yè)務(wù)記錄斷點(diǎn)表,進(jìn)行斷點(diǎn)回滾。
本發(fā)明的有益效果是:本發(fā)明將斷點(diǎn)信息存入內(nèi)存數(shù)據(jù)庫,在當(dāng)前應(yīng)用異常停止,備用應(yīng)用根據(jù)內(nèi)存數(shù)據(jù)庫中的斷點(diǎn)信息可以順利接管正在處理的業(yè)務(wù),斷點(diǎn)數(shù)據(jù)存儲于內(nèi)存數(shù)據(jù)庫中,根據(jù)斷點(diǎn)信息分類,設(shè)計(jì)相應(yīng)模型,滿足正常流程中的頻繁的斷點(diǎn)增刪操作和斷點(diǎn)回滾流程中的查詢操作,業(yè)務(wù)記錄斷點(diǎn)與業(yè)務(wù)處理保持一個數(shù)據(jù)庫事務(wù),有利于斷點(diǎn)回滾,保持?jǐn)?shù)據(jù)準(zhǔn)確性。
在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
進(jìn)一步地,所述步驟7包括:
步驟7.1:根據(jù)映射表中的每條映射信息,查詢業(yè)務(wù)記錄斷點(diǎn)表,進(jìn)行業(yè)務(wù)回滾;
步驟7.2:斷點(diǎn)回滾完成后,刪除業(yè)務(wù)記錄斷點(diǎn)表的相應(yīng)業(yè)務(wù)記錄斷點(diǎn)信息和映射表中的相應(yīng)映射信息;
步驟7.3:映射表中的映射信息全部處理完成后,刪除文件斷點(diǎn)表中的全部文件級斷點(diǎn)信息。
采用上述進(jìn)一步方案的有益效果是斷點(diǎn)信息回滾和及時刪除保持一個事務(wù)有利于避免重復(fù)回滾問題。
進(jìn)一步地,所述文件斷點(diǎn)表用于記錄文件處理信息,所述業(yè)務(wù)記錄斷點(diǎn)表用于記錄每條業(yè)務(wù)記錄處理的斷點(diǎn)信息,所述映射表用于文件斷點(diǎn)表和業(yè)務(wù)記錄斷點(diǎn)表的關(guān)鍵字段映射。
進(jìn)一步地,所述步驟7還包括步驟7.4:刪除業(yè)務(wù)記錄斷點(diǎn)表、映射表和文件斷點(diǎn)表。
進(jìn)一步地,所述步驟7.4包括:
步驟7.4.1:根據(jù)文件名查詢映射表,獲取文件中所有映射信息的號碼;
步驟7.4.2:根據(jù)文件名和號碼刪除業(yè)務(wù)記錄斷點(diǎn)表;
步驟7.4.3:根據(jù)文件名刪除映射表;
步驟7.4.4:根據(jù)文件名刪除文件斷點(diǎn)表。
本發(fā)明提供的另一種技術(shù)方案如下:一種基于內(nèi)存數(shù)據(jù)庫的斷點(diǎn)處理系統(tǒng),該系統(tǒng)包括數(shù)據(jù)模型設(shè)計(jì)模塊、文件操作模塊、判斷模塊、處理模塊和回滾模塊;
所述數(shù)據(jù)模型設(shè)計(jì)模塊用于在數(shù)據(jù)庫中創(chuàng)建文件斷點(diǎn)表、業(yè)務(wù)記錄斷點(diǎn)表以及映射表;
所述文件操作模塊用于讀取數(shù)據(jù)庫中文件,將讀取文件過程中的文件級斷點(diǎn)信息插入文件斷點(diǎn)表;讀取并處理文件中的業(yè)務(wù)記錄,將處理每條業(yè)務(wù)記錄時的記錄級斷點(diǎn)信息插入業(yè)務(wù)記錄斷點(diǎn)表,將文件與業(yè)務(wù)記錄的映射信息插入映射表,記錄級斷點(diǎn)信息與業(yè)務(wù)處理的進(jìn)程信息保持同一事務(wù);如果將文件遷移至文件出口目錄,則將遷移文件過程中的文件級斷點(diǎn)信息插入文件斷點(diǎn)表;
所述判斷模塊用于判斷文件斷點(diǎn)表中是否記錄了讀取文件過程中的文件級斷點(diǎn)信息和遷移文件過程中的文件級斷點(diǎn)信息,根據(jù)判斷結(jié)果決定啟動處理模塊或回滾模塊;
所述處理模塊用于將文件遷移完成的文件級斷點(diǎn)信息插入文件斷點(diǎn)表,刪除文件斷點(diǎn)表、業(yè)務(wù)記錄斷點(diǎn)表和映射表,結(jié)束操作;
所述回滾模塊用于根據(jù)所述映射表中的每條映射信息,查詢業(yè)務(wù)記錄斷點(diǎn)表,進(jìn)行業(yè)務(wù)回滾。
進(jìn)一步地,所述回滾模塊還用于根據(jù)映射表中的每條映射信息,查詢業(yè)務(wù)記錄斷點(diǎn)表,進(jìn)行業(yè)務(wù)回滾;斷點(diǎn)回滾完成后,刪除業(yè)務(wù)記錄斷點(diǎn)表的相應(yīng)業(yè)務(wù)記錄斷點(diǎn)信息和映射表中的相應(yīng)映射信息;映射表中的映射信息全部處理完成后,刪除文件斷點(diǎn)表中的全部文件級斷點(diǎn)信息。
進(jìn)一步地,所述文件斷點(diǎn)表用于記錄文件處理信息,所述業(yè)務(wù)記錄斷點(diǎn)表用于記錄每條業(yè)務(wù)記錄處理的斷點(diǎn)信息,所述映射表用于文件斷點(diǎn)表和業(yè)務(wù)記錄斷點(diǎn)表的關(guān)鍵字段映射。
進(jìn)一步地,所述系統(tǒng)還包括刪除模塊,所述刪除模塊用于刪除業(yè)務(wù)記錄斷點(diǎn)表、映射表和文件斷點(diǎn)表。
進(jìn)一步地,所述刪除模塊用于根據(jù)文件名查詢映射表,獲取文件中所有映射信息的號碼;根據(jù)文件名和號碼刪除業(yè)務(wù)記錄斷點(diǎn)表;根據(jù)文件名刪除文件與業(yè)務(wù)記錄映射表;根據(jù)文件名刪除文件斷點(diǎn)表。
附圖說明
圖1為本發(fā)明一種基于內(nèi)存數(shù)據(jù)庫的斷點(diǎn)處理方法流程示意圖。
具體實(shí)施方式
以下結(jié)合附圖對本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
如圖1所示,為本發(fā)明實(shí)施例提供的一種基于內(nèi)存數(shù)據(jù)庫的斷點(diǎn)處理方法,該方法包括以下步驟:
步驟1:在數(shù)據(jù)庫中創(chuàng)建文件斷點(diǎn)表、業(yè)務(wù)記錄斷點(diǎn)表及映射表;
步驟2:讀取數(shù)據(jù)庫中文件,將讀取文件過程中的文件級斷點(diǎn)信息插入文件斷點(diǎn)表;
步驟3:讀取并處理文件中的業(yè)務(wù)記錄,將處理每條業(yè)務(wù)記錄時的記錄級斷點(diǎn)信息插入業(yè)務(wù)記錄斷點(diǎn)表,將文件與業(yè)務(wù)記錄的映射信息插入映射表,記錄級斷點(diǎn)信息與業(yè)務(wù)處理的進(jìn)程信息保持同一事務(wù);
步驟4:如果將文件遷移至文件出口目錄,則將遷移文件過程中的文件級斷點(diǎn)信息插入文件斷點(diǎn)表;
步驟5:判斷文件斷點(diǎn)表中是否記錄了讀取文件過程中的文件級斷點(diǎn)信息和遷移文件過程中的文件級斷點(diǎn)信息,若是,執(zhí)行步驟6,若只記錄了讀取文件過程中的文件級斷點(diǎn)信息,則執(zhí)行步驟7;
步驟6:將文件遷移完成的文件級斷點(diǎn)信息插入文件斷點(diǎn)表,刪除文件斷點(diǎn)表、業(yè)務(wù)記錄斷點(diǎn)表和映射表,結(jié)束操作;
步驟7:根據(jù)映射表中的每條映射信息,查詢業(yè)務(wù)記錄斷點(diǎn)表,進(jìn)行斷點(diǎn)回滾。
其中,步驟7包括:
步驟7.1:根據(jù)映射表中的每條映射信息,查詢業(yè)務(wù)記錄斷點(diǎn)表,進(jìn)行業(yè)務(wù)回滾;
步驟7.2:斷點(diǎn)回滾完成后,刪除業(yè)務(wù)記錄斷點(diǎn)表的相應(yīng)業(yè)務(wù)記錄斷點(diǎn)信息和映射表中的相應(yīng)映射信息;
步驟7.3:映射表中的映射信息全部處理完成后,刪除文件斷點(diǎn)表中的全部文件級斷點(diǎn)信息。
其中文件斷點(diǎn)表用于記錄文件處理信息,所述業(yè)務(wù)記錄斷點(diǎn)表用于記錄每條業(yè)務(wù)記錄處理的斷點(diǎn)信息,所述映射表用于文件斷點(diǎn)表和業(yè)務(wù)記錄斷點(diǎn)表的關(guān)鍵字段映射。
其中,步驟7還包括步驟7.4:刪除業(yè)務(wù)記錄斷點(diǎn)表、映射表和文件斷點(diǎn)表。
其中,步驟7.4包括:
步驟7.4.1:根據(jù)文件名查詢映射表,獲取文件中所有映射信息的號碼;
步驟7.4.2:根據(jù)文件名和號碼刪除業(yè)務(wù)記錄斷點(diǎn)表;
步驟7.4.3:根據(jù)文件名刪除映射表;
步驟7.4.4:根據(jù)文件名刪除文件斷點(diǎn)表。
本發(fā)明實(shí)施例還提供了一種基于內(nèi)存數(shù)據(jù)庫的斷點(diǎn)處理系統(tǒng),該系統(tǒng)包括數(shù)據(jù)模型設(shè)計(jì)模塊、文件操作模塊、判斷模塊、處理模塊和回滾模塊;
數(shù)據(jù)模型設(shè)計(jì)模塊用于在數(shù)據(jù)庫中創(chuàng)建文件斷點(diǎn)表、業(yè)務(wù)記錄斷點(diǎn)表以及映射表;
文件操作模塊用于讀取數(shù)據(jù)庫中文件,將讀取文件過程中的文件級斷點(diǎn)信息插入文件斷點(diǎn)表;讀取并處理文件中的業(yè)務(wù)記錄,將處理每條業(yè)務(wù)記錄時的記錄級斷點(diǎn)信息插入業(yè)務(wù)記錄斷點(diǎn)表,將文件與業(yè)務(wù)記錄的映射信息插入映射表,記錄級斷點(diǎn)信息與業(yè)務(wù)處理的進(jìn)程信息保持同一事務(wù);如果將文件遷移至文件出口目錄,則將遷移文件過程中的文件級斷點(diǎn)信息插入文件斷點(diǎn)表;;
判斷模塊用于判斷文件斷點(diǎn)表中是否記錄了讀取文件過程中的文件級斷點(diǎn)信息和遷移文件過程中的文件級斷點(diǎn)信息,根據(jù)判斷結(jié)果決定啟動處理模塊或回滾模塊;
處理模塊用于將文件遷移完成的文件級斷點(diǎn)信息插入文件斷點(diǎn)表,刪除文件斷點(diǎn)表、業(yè)務(wù)記錄斷點(diǎn)表和映射表,結(jié)束操作;
回滾模塊用于根據(jù)所述映射表中的每條映射信息,查詢業(yè)務(wù)記錄斷點(diǎn)表,進(jìn)行業(yè)務(wù)回滾。
其中,回滾模塊還用于根據(jù)映射表中的每條映射信息,查詢業(yè)務(wù)記錄斷點(diǎn)表,進(jìn)行業(yè)務(wù)回滾;斷點(diǎn)回滾完成后,刪除業(yè)務(wù)記錄斷點(diǎn)表的相應(yīng)業(yè)務(wù)記錄斷點(diǎn)信息和映射表中的相應(yīng)映射信息;映射表中的映射信息全部處理完成后,刪除文件斷點(diǎn)表中的全部文件級斷點(diǎn)信息。
其中,文件斷點(diǎn)表用于記錄文件處理信息,所述業(yè)務(wù)記錄斷點(diǎn)表用于記錄每條業(yè)務(wù)記錄處理的斷點(diǎn)信息,所述映射表用于文件斷點(diǎn)表和業(yè)務(wù)記錄斷點(diǎn)表的關(guān)鍵字段映射。
其中,該系統(tǒng)還包括刪除模塊,刪除模塊用于刪除業(yè)務(wù)記錄斷點(diǎn)表、映射表和文件斷點(diǎn)表。
其中,刪除模塊用于根據(jù)文件名查詢映射表,獲取文件中所有映射信息的號碼;根據(jù)文件名和號碼刪除業(yè)務(wù)記錄斷點(diǎn)表;根據(jù)文件名刪除文件與業(yè)務(wù)記錄映射表;根據(jù)文件名刪除文件斷點(diǎn)表。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。