[發明專利]一種基于臨時表的多歸檔文件查詢方法有效
| 申請號: | 200810142224.0 | 申請日: | 2008-07-30 |
| 公開(公告)號: | CN101639839A | 公開(公告)日: | 2010-02-03 |
| 發明(設計)人: | 魯春懷 | 申請(專利權)人: | 中興通訊股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518057廣東省深圳市南山*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 臨時 歸檔 文件 查詢 方法 | ||
技術領域
本發明涉及使用數據庫(Database)作為數據存儲介質的軟件開發技術領域,具體涉及一種基于臨時表的多歸檔文件查詢方法。
背景技術
大型的數據庫應用系統中,為了避免數據庫空間溢出,必須對歷史數據進行歸檔,同時支持對歸檔文件進行查詢。比如,在電信網絡管理系統中,大量的歷史告警、性能等數據必須定期歸檔,對歸檔文件的查詢采用了基于臨時表的方式,這也是目前廣泛使用的一種方式,其具體方案如下:
(1)在臨時數據庫中創建一個臨時表;
(2)將歸檔文件的內容裝載到臨時表中
(3)從臨時表中查詢符合條件的記錄
上述查詢方案能滿足單個歸檔文件的查詢需求,但有時用戶需要一次查詢多個歸檔文件,比如在電信網絡管理系統中需要統計一段時間的告警記錄,如果讓用戶逐個查詢該時間段內的歸檔文件再進行匯總肯定不能很好地滿足用戶需求,這就需要一次性查詢出該段時間內的所有告警歸檔文件;這種情況采用上述方案就同時存在空間和效率方面的問題。首先,如果一次查詢涉及的歸檔文件多,比如要查詢過去一個月的或者一個季度的,記錄量太大,可能會導致臨時數據庫空間溢出;其次,如果采用逐條將歸檔文件中的記錄插入臨時表在記錄量大的情況下整個裝載過程會非常慢。另外,查詢歸檔文件一般采用分頁查詢的方式,如果每一頁查詢都重新裝載,效率上用戶肯定不能接受,這個可以通過緩存裝載的歸檔進行一定的優化,比如通過在系統中保存一個已裝載的文件鏈表的方式,如果要查詢的歸檔文件已經裝載過就不需要重新裝載,這對查單個歸檔文件來說是一個較好的解決方案,但對多歸檔文件就仍然滿足不了需求。如果所有的歸檔文件都恢復到一個臨時表中,緩存的粒度就太大,兩次查詢之間只要有一個文件不相同所有的文件都必須重新裝載,而且也影響恢復的效率;如果每個文件恢復到一個單獨的臨時表中,可以實現以文件為單位的共享,但一次要同時查詢多個表實現分頁查詢或全網排序有難度,也不是理想的解決方案。
可見現有技術中存在一定的問題,需要進一步地改進。
發明內容
本發明的目的在于提供一種基于臨時表的多歸檔文件查詢方法,其能通過加快文件裝載到臨時表中的速度,并對已裝載的歸檔進行兩級緩存來優化多歸檔文件查詢的效率。
為實現上述目的,本發明采用如下技術方案:
本發明提供了一種基于臨時表的多歸檔文件查詢方法,所述方法包括以下步驟:
A、根據查詢要求,過濾出待查詢歸檔文件;
B、估算出裝載所述歸檔文件需要的臨時數據庫的空間大??;若臨時數據庫的空間足夠,則執行步驟C;
C、采用批量復制(BCP)方式將待查詢歸檔文件中的記錄逐個恢復到所述臨時數據庫中的臨時表中,并使用兩級緩存機制來實現多次查詢之間以歸檔文件為單位的數據共享;
D、根據查詢條件,從所述臨時表中獲取數據。
所述的方法,其中,所述步驟B中,若所述臨時數據庫的空間不夠,則提示用戶改變所述查詢要求或擴展所述臨時數據庫的空間,并提供給用戶所需要的臨時數據庫空間的最小值作為擴容參考。
所述的方法,其中,所述查詢要求為用戶下發的查詢時間段;所述步驟A包括以下步驟:
A1、遍歷默認歸檔目錄下的所有歸檔文件,
A2、讀取每個歸檔文件的備注信息文件,得到每個歸檔文件記錄的時間段;
A3、比較獲得的時間段與所述查詢時間段,將滿足所述查詢時間段要求的歸檔文件過濾出來,作為待查詢歸檔文件。
所述的方法,其中,所述步驟B中,所述估算過程按照以下步驟進行:
B1、計算出待查詢歸檔文件的記錄條數總和;
B2、從所述臨時數據庫中查詢出每兆空間可存放的記錄條數;
B3、按照下述公式計算裝載所述歸檔文件需要的臨時數據庫的空間大小,
其中,Q為所要計算的臨時數據庫的空間大小,M為所述步驟B1獲得的記錄條數總和,N為所述步驟B2獲得的每兆空間可存放的記錄條數,K為一至少大于2的比例系數。
所述的方法,其中,所述步驟C包括以下步驟:
C1、判斷一公共臨時表中存放的記錄是否對應本次待查詢的所有歸檔文件,如果否,則執行步驟C2;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中興通訊股份有限公司,未經中興通訊股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810142224.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:機動車輛的二維碼識別管理系統及其應用方法
- 下一篇:串行總線的接口電路





