[发明专利]一种树结构资源存储、查询的方法和装置有效
| 申请号: | 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个月内的告警事件以列表数据提前加载到内存中,在查询时,通过遍历这些缓存列表,提高事件查询的速度。现有的这种方案是通过缓存方式,查询性能虽然高于数据库SQL查询方式,但是针对树节点资源查询时需要遍历整个事件列表,在树节点深度较长时,需要大量的递归遍历子资源事件的情况,在数据量巨大时,性能表现也不尽人意。
发明内容
本发明提供了一种树结构资源存储、查询的方法和装置,能够有效地提高数据量巨大时的事件查询速度。
为达到上述目的,本发明的技术方案是这样实现的:
一方面,本发明提供了一种树结构资源存储的方法,包括:
通过前序遍历算法遍历树结构资源;
将遍历出的各个资源及其各子资源的事件数据按照前序遍历的顺序依次存储在一个事件列表中;并在一个位置哈希表中记录各个资源在所述事件列表中的起始位置和事件数量;其中所述事件数量为各个资源自身的事件数量与其各子资源的事件数量之和。
其中,在通过前序遍历算法遍历树结构资源之前,所述方法还包括:
建立一个空的事件列表,用于按照前序遍历的顺序依次存储各个资源及其各子资源的事件数据;
建立一个空的位置哈希表,该位置哈希表的键名为各个资源的ID,键值为两位的整型数组,用于分别记录各个资源在所述事件列表中的起始位置和事件数量;
将树结构资源的事件数据加载到缓存中。
其中,所述将遍历出的各个资源及其各子资源的事件数据按照前序遍历的顺序依次存储在一个事件列表中;并在一个位置哈希表中记录各个资源在所述事件列表中的起始位置和事件数量包括:
前序遍历树结构资源时,将依次遍历出的当前资源的事件数据和其各子资源的事件数据添加到所述事件列表的尾部;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京神州泰岳软件股份有限公司,未经北京神州泰岳软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410834814.5/2.html,转载请声明来源钻瓜专利网。





