專利名稱:一種網(wǎng)管歷史數(shù)據(jù)的多表格處理方法
技術領域:
本發(fā)明涉及網(wǎng)絡管理系統(tǒng)的一種網(wǎng)管歷史數(shù)據(jù)的多表格處理方法。
技術背景目前,網(wǎng)絡管理系統(tǒng)管理的通訊設備數(shù)量龐大,為了監(jiān)控所有設備并保 留設備在各個時刻的運行狀態(tài)值,網(wǎng)管需要保存大量的設備狀態(tài)歷史數(shù)據(jù), 包括歷史性能和歷史告警。當網(wǎng)管保存在數(shù)據(jù)庫中的歷史數(shù)據(jù)達到一定數(shù)量 后,需要將最老的一批數(shù)據(jù)從數(shù)據(jù)庫轉(zhuǎn)儲到其他存儲介質(zhì),同時將已轉(zhuǎn)儲的 歷史數(shù)據(jù)從數(shù)據(jù)庫中刪除。目前的商用數(shù)據(jù)庫在刪除數(shù)據(jù)庫表格中的數(shù)據(jù)時 要同步記錄被刪除數(shù)據(jù)的日志,如果被刪除的數(shù)據(jù)數(shù)量很多,則整個刪除過 程耗時長、效率低,并且刪除過程中不允許對數(shù)據(jù)庫表格進行其他操作,導 致網(wǎng)管所有涉及該數(shù)據(jù)庫表格的操作都被阻塞并出現(xiàn)異常,網(wǎng)管系統(tǒng)的效率 和可靠性大大降低。發(fā)明內(nèi)容本發(fā)明所要解決的技術問題是提供一種網(wǎng)絡管理系統(tǒng)的網(wǎng)管歷史數(shù)據(jù) 的多表格處理方法,解決了當前在刪除大批量歷史數(shù)據(jù)耗費時間長、效率低 并影響網(wǎng)管系統(tǒng)正常運行的問題,刪除過程中數(shù)據(jù)庫不用記錄被刪除數(shù)據(jù)的 曰志,效率高、耗時短,同時該方法保留了傳統(tǒng)單個表格存儲歷史數(shù)據(jù)方法 中數(shù)據(jù)查詢和插入操作的高效率,從而提高了網(wǎng)管系統(tǒng)的效率和可靠性。為了解決上述技術問題,本發(fā)明提供了 一種網(wǎng)管歷史數(shù)據(jù)的多表格處理方法,應用于網(wǎng)絡管理系統(tǒng),包括以下步驟a、在數(shù)據(jù)庫中創(chuàng)建至少3個數(shù)據(jù)結構相同的表格,設置各表格的使用 順序,設定單個表格的最大數(shù)據(jù)條數(shù),設定數(shù)據(jù)庫中所有表格的數(shù)據(jù)總條數(shù)
b、 在所述數(shù)據(jù)庫的所有表格中搜索狀態(tài)為正在使用的表格,并使用該 表格記錄歷史數(shù)據(jù);c、 當檢測所述數(shù)據(jù)庫的所有表格記錄的數(shù)據(jù)條數(shù)之和達到所述上限閥 值Gxt。/。的值時,其中702300,清空狀態(tài)為正在使用的表格的后一個表 格的歷史數(shù)據(jù);d、 當檢測所述數(shù)據(jù)庫的狀態(tài)為正在使用的表格中歷史數(shù)據(jù)條數(shù)達到設 定的所述單個表格的最大數(shù)據(jù)條數(shù)時,使后一個表格記錄歷史數(shù)據(jù),同時將 該后一個表格的狀態(tài)設為正在使用、將前一個狀態(tài)為正在使用的表格的狀態(tài) 設為未使用。進一步地,上述方法還可包括,所述步驟a中,所述各表格為空,所有 所述表格的狀態(tài)都設為未使用。進一步地,上述方法還可包括,所述步驟b中,如果所述所有表格的狀 態(tài)都為未使用,則依據(jù)預先設置的所述各表格的使用順序,選取第一個表格 記錄歷史數(shù)據(jù),同時設定該第一個表格的狀態(tài)為正在使用。進一步地,上述方法還可包括,當所述網(wǎng)絡管理系統(tǒng)重新啟動時,選擇 上一次退出時狀態(tài)為正在使用的表格作為當前使用表格記錄歷史數(shù)據(jù)。進一步地,上述方法還可包括,采用所述數(shù)據(jù)庫的操作命令為清空一個 表truncate,來清空所述表格的歷史數(shù)據(jù),所述表格清空時間為秒級。進一步地,上述方法還可包括,所述上限閥值G是所述數(shù)據(jù)庫中所有 表格的個數(shù)乘以所述單個表格的最大數(shù)據(jù)條數(shù)得到的值。進一步地,上述方法還可包括,對所述單個表格進行數(shù)據(jù)查詢和數(shù)據(jù)插入。與現(xiàn)有技術相比,由于在網(wǎng)絡管理系統(tǒng)中應用本發(fā)明一種網(wǎng)管歷史數(shù)據(jù) 的多表格處理方法,解決了當前在刪除大批量歷史數(shù)據(jù)耗費時間長、效率低 并影響網(wǎng)管系統(tǒng)正常運行的問題,刪除過程中數(shù)據(jù)庫不用記錄被刪除數(shù)據(jù)的 日志,效率高、耗時短,同時該方法保留了傳統(tǒng)單個表格存儲歷史數(shù)據(jù)方法 中數(shù)據(jù)查詢和插入操作的高效率,從而提高了網(wǎng)管系統(tǒng)的效率和可靠性
附困說明
圖1是本發(fā)明實施例的一種網(wǎng)管歷史數(shù)據(jù)的多表格處理方法中表格切 換使用的實現(xiàn)步驟的示意圖。
具體實施方式
下面結合附圖和具體實施方式
對本發(fā)明作詳細說明。 在網(wǎng)絡管理系統(tǒng)中,包括對單個表格進行數(shù)據(jù)查詢和數(shù)據(jù)插入。第一實施例圖1描述了本發(fā)明實施例的一種網(wǎng)管歷史數(shù)據(jù)的多表格處理方法中表 格切換使用的實現(xiàn)步驟,具體步驟如下步驟l、在數(shù)據(jù)庫中創(chuàng)建n個數(shù)據(jù)結構相同的表格,所述n是大于2的 整數(shù),本發(fā)明實施例中假設n = 6,設置該6個表格的使用順序,設定單個 表格的最大數(shù)據(jù)條數(shù);所述6個表格為空,該6個表格的狀態(tài)都設為未使用。步驟2、第一次啟動時,依照所述6個表格的使用順序,第一個表格記 錄歷史數(shù)據(jù),并將第一個表格的狀態(tài)設為正在使用;當重新啟動時,選擇上一次退出時狀態(tài)為正在使用的表格作為當前使用 表格記錄歷史數(shù)據(jù)。步驟3、檢測第一個表格記錄的歷史數(shù)據(jù)條數(shù)增加到設定的單個表格最 大數(shù)據(jù)條數(shù)時,切換到第二個表格記錄歷史數(shù)據(jù),同時將第一個表格的狀態(tài) 設為未使用,第二個表格的狀態(tài)設為正在使用;同理可推,第一到第六個表格依次記錄歷史數(shù)據(jù),并在切換的同時設定 前后兩個表格的狀態(tài)。步驟4、當使用第六個表格記錄歷史數(shù)據(jù)時,如果歷史數(shù)據(jù)條數(shù)達到單 個表格的最大數(shù)據(jù)條數(shù)時,清空第一個表格的歷史數(shù)據(jù),切換到第一個表格 記錄歷史數(shù)據(jù),將第一個表格的狀態(tài)設為正在使用,第六個表格的狀態(tài)設為
未使用,返回步驟3。清空表格的歷史數(shù)據(jù)時,可以采用數(shù)據(jù)庫的"清空一個表(truncate)" 操作命令清空表格的歷史數(shù)據(jù);清空表格的過程耗時極短,時間為秒級。試驗數(shù)據(jù)顯示清空一個包含2千萬條數(shù)據(jù)的表格的時間約為10秒中, 而傳統(tǒng)方法在一個表中刪除2千萬條數(shù)據(jù)的時間約為30分鐘。 第二實施例在數(shù)據(jù)庫中創(chuàng)建n個數(shù)據(jù)結構相同的表格,所述n是大于2的整數(shù),設 置各表格的使用順序,設定單個表格的最大數(shù)據(jù)條數(shù),設定數(shù)據(jù)庫中n個表 格的數(shù)據(jù)總條數(shù)的值是上限閥值G,上限閥值G是大于0的整數(shù)。上限閥值G = n x單個表格的最大數(shù)據(jù)條數(shù)。步驟a、在數(shù)據(jù)庫的所有表格中搜索狀態(tài)為正在使用的表格,并使用該 表格記錄歷史數(shù)據(jù);如果所有表格的狀態(tài)都為未使用,則選取第一個表格記錄歷史數(shù)據(jù),同 時設定第一個表格的狀態(tài)為正在使用。步驟b、當檢測所述數(shù)據(jù)庫的所有表格記錄的數(shù)據(jù)條數(shù)之和達到所述上 限閥值Gxt。/。的值時,清空狀態(tài)為正在使用的表格的后一個表格的歷史數(shù) 據(jù);其中703^100。步驟c、當檢測狀態(tài)為正在使用的表格中的歷史數(shù)據(jù)條數(shù)達到設定的單 表格的最大數(shù)據(jù)條數(shù)時,使后一個表格記錄歷史數(shù)據(jù),同時將該后一個表格 的狀態(tài)設為正在使用,將前一個狀態(tài)為正在使用的表格的狀態(tài)設為未使用。以上所述僅為本發(fā)明的示意實施例,應當知道這可以有許多變型,這種 變型不被認為是脫離本發(fā)明的示意實施例的精神和范圍,并且所有這樣的本 領域普通技術人員顯而易見的變型被包含在所附權利要求的范圍之內(nèi)。
權利要求
1、 一種網(wǎng)管歷史數(shù)據(jù)的多表格處理方法,應用于網(wǎng)絡管理系統(tǒng),包括以下步驟a、 在數(shù)據(jù)庫中創(chuàng)建至少3個數(shù)據(jù)結構相同的表格,設置各表格的使用 順序,設定單個表格的最大數(shù)據(jù)條數(shù),設定數(shù)據(jù)庫中所有表格的數(shù)據(jù)總條數(shù) 的值是上限閥值G;b、 在所述數(shù)據(jù)庫的所有表格中搜索狀態(tài)為正在使用的表格,并使用該 表格記錄歷史數(shù)據(jù);c、 當檢測所述數(shù)據(jù)庫的所有表格記錄的數(shù)據(jù)條數(shù)之和達到所述上限閥 值Gxt。/。的值時,其中703^100,清空狀態(tài)為正在使用的表格的后一個表 格的歷史數(shù)據(jù);d、 當檢測所述數(shù)據(jù)庫的狀態(tài)為正在使用的表格中歷史數(shù)據(jù)條數(shù)達到設 定的所述單個表格的最大數(shù)據(jù)條數(shù)時,使后一個表格記錄歷史數(shù)據(jù),同時將 該后一個表格的狀態(tài)設為正在使用、將前一個狀態(tài)為正在使用的表格的狀態(tài) 設為未使用。
2、 如權利要求l所述的方法,其特征在于,所述步驟a中,所述各表 格為空,所有所述表格的狀態(tài)都設為未使用。
3、 如權利要求l所述的方法,其特征在于,所述步驟b中,如果所述 所有表格的狀態(tài)都為未使用,則依據(jù)預先設置的所述各表格的使用順序,選 取第一個表格記錄歷史數(shù)據(jù),同時設定該第一個表格的狀態(tài)為正在使用。
4、 如權利要求l、 2或3所述的方法,其特征在于,當所述網(wǎng)絡管理系 統(tǒng)重新啟動時,選擇上一次退出時狀態(tài)為正在使用的表格作為當前使用表格 記錄歷史數(shù)據(jù)。
5、 如權利要求l、 2或3所述的方法,其特征在于,采用所述數(shù)據(jù)庫的 操作命令為清空一個表tmncate,來清空所述表格的歷史數(shù)據(jù),所述表格清空時間為秒級。
6、 如權利要求1、 2或3所述的方法,其特征在于,所述上限閥值G 是所述數(shù)據(jù)庫中所有表格的個數(shù)乘以所述單個表格的最大數(shù)據(jù)條數(shù)得到的 值。
7、 如權利要求l、 2或3所述的方法,其特征在于,還包括對所述單個 表格進行數(shù)據(jù)查詢和數(shù)據(jù)插入。
全文摘要
一種網(wǎng)管歷史數(shù)據(jù)的多表格處理方法,包括在數(shù)據(jù)庫中創(chuàng)建至少3個數(shù)據(jù)結構相同的表格并設置其使用順序,設定單個表格的最大數(shù)據(jù)條數(shù);在所有表格中搜索狀態(tài)為正在使用的表格,并使用該表格記錄歷史數(shù)據(jù);當檢測所有表格記錄的數(shù)據(jù)條數(shù)之和達到所有表格的數(shù)據(jù)總條數(shù)的值時,清空狀態(tài)為正在使用的表格的后一個表格的歷史數(shù)據(jù);當檢測數(shù)據(jù)庫的狀態(tài)為正在使用的表格中歷史數(shù)據(jù)條數(shù)達到設定的單個表格的最大數(shù)據(jù)條數(shù)時,使后一個表格記錄歷史數(shù)據(jù),設定該后一個表格為正在使用、設定前一個狀態(tài)為正在使用的表格為未使用。應用本發(fā)明,解決了在刪除大批量歷史數(shù)據(jù)耗費時間長、效率低并影響網(wǎng)管系統(tǒng)正常運行的問題,提高了網(wǎng)管系統(tǒng)的效率和可靠性。
文檔編號G06F17/30GK101145156SQ20071009815
公開日2008年3月19日 申請日期2007年4月17日 優(yōu)先權日2007年4月17日
發(fā)明者萬傳芫 申請人:中興通訊股份有限公司