[發明專利]一種樹結構資源存儲、查詢的方法和裝置有效
| 申請號: | 201410834814.5 | 申請日: | 2014-12-26 |
| 公開(公告)號: | CN105786931B | 公開(公告)日: | 2019-06-04 |
| 發明(設計)人: | 馮孝光;王慶磊;張國波 | 申請(專利權)人: | 北京神州泰岳軟件股份有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22 |
| 代理公司: | 北京市隆安律師事務所 11323 | 代理人: | 權鮮枝;吳昊 |
| 地址: | 100089 北京市海淀區萬*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 種樹 結構 資源 存儲 查詢 方法 裝置 | ||
本發明公開了一種樹結構資源存儲、查詢的方法和裝置。所述的樹結構資源查詢方法包括:獲取預先存儲的樹結構資源的事件列表和位置哈希表,其中,所述事件列表中存儲有通過前序遍歷算法遍歷樹結構資源時依次遍歷出的各個資源及其各子資源的事件數據,所述位置哈希表中記錄有各個資源在所述事件列表中的起始位置和事件數量;所述事件數量為各個資源自身的事件數量與其各子資源的事件數量之和;在所述位置哈希表中查詢待查詢資源在所述事件列表中的起始位置和事件數量;根據查詢出的起始位置和事件數量,在所述事件列表中截取出該待查詢資源及其各子資源的事件數據。本發明的技術方案能夠有效地提高數據量巨大時的樹結構資源事件的查詢速度。
技術領域
本發明涉及樹數據緩存查詢技術領域,特別涉及一種樹結構資源存儲、查詢的方法和裝置。
背景技術
在監控系統中可監控故障產生的實體,如主機、CPU、表空間等稱為資源。通常業務系統由數據庫、主機等資源構成,主機本身也有子資源,如內存,cpu等。這些資源在監控過程中通常會產生大量的告警事件,即資源產生故障的信息。例如主機本身會有如“連接斷開”,“cpu使用率過高”等事件,而其各子資源也會有自己的告警事件,如主機的子資源內存的“內存頁數過高”事件。在IT監控系統中,所監控的資源通常存在樹結構關系,如圖1所示,圖1左列為樹結構關系的資源構成資源樹的示例,圖1右列為資源產生的歷史告警事件的示例。
用戶在查詢事件時,通常希望能夠查詢出所選資源及其各子資源的所有的告警事件。但由于監控資源數量龐大,則其資源對應的歷史告警事件數量因為時間的累計更龐大。那么對于資源多、事件多的情況下,對歷史事件進行條件查詢時,對于百萬、千萬以上的事件信息,通過傳統的數據庫方式進行結構化查詢語言(Structured Query Language,SQL)查詢,性能極其緩慢,用戶體驗很差。
現有的提高查詢性能方案是:用戶對于資源事件的查詢通常都是關注1~2個月內的數據,將2個月內的告警事件以列表數據提前加載到內存中,在查詢時,通過遍歷這些緩存列表,提高事件查詢的速度?,F有的這種方案是通過緩存方式,查詢性能雖然高于數據庫SQL查詢方式,但是針對樹節點資源查詢時需要遍歷整個事件列表,在樹節點深度較長時,需要大量的遞歸遍歷子資源事件的情況,在數據量巨大時,性能表現也不盡人意。
發明內容
本發明提供了一種樹結構資源存儲、查詢的方法和裝置,能夠有效地提高數據量巨大時的事件查詢速度。
為達到上述目的,本發明的技術方案是這樣實現的:
一方面,本發明提供了一種樹結構資源存儲的方法,包括:
通過前序遍歷算法遍歷樹結構資源;
將遍歷出的各個資源及其各子資源的事件數據按照前序遍歷的順序依次存儲在一個事件列表中;并在一個位置哈希表中記錄各個資源在所述事件列表中的起始位置和事件數量;其中所述事件數量為各個資源自身的事件數量與其各子資源的事件數量之和。
其中,在通過前序遍歷算法遍歷樹結構資源之前,所述方法還包括:
建立一個空的事件列表,用于按照前序遍歷的順序依次存儲各個資源及其各子資源的事件數據;
建立一個空的位置哈希表,該位置哈希表的鍵名為各個資源的ID,鍵值為兩位的整型數組,用于分別記錄各個資源在所述事件列表中的起始位置和事件數量;
將樹結構資源的事件數據加載到緩存中。
其中,所述將遍歷出的各個資源及其各子資源的事件數據按照前序遍歷的順序依次存儲在一個事件列表中;并在一個位置哈希表中記錄各個資源在所述事件列表中的起始位置和事件數量包括:
前序遍歷樹結構資源時,將依次遍歷出的當前資源的事件數據和其各子資源的事件數據添加到所述事件列表的尾部;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京神州泰岳軟件股份有限公司,未經北京神州泰岳軟件股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410834814.5/2.html,轉載請聲明來源鉆瓜專利網。





