本发明涉及通信设备的告警数据管理,具体涉及用于通信设备的数据管理方法及可读存储介质。
背景技术:
1、在ptn(packet transport network,分组传送网)、otn(optical transportnetwork,光传送网)、wdm(wavelength division multiplexing,波分复用)、ipran(ipradioaccess network,基于ip的移动回传网络)以及交换机等通信设备的告警管理功能中,需要对设备上报的告警数据进行快速动态缓存和对缓存的多条件快速检索,以达到网管系统对设备告警功能的及时响应。
2、告警数据具有数据量大,改变频率高的特点。存储此类数据常用的技术方案是用的链表或哈希表的方式。对于链表存储方式,因为链表结构是按数据顺序存储,此结构不能快速定位到数据节点,所以不支持数据的快速查询。而使用哈希表方式存储时,因为哈希表带有数据的索引条件存储数据,可以快速查询到对应的数据节点。
3、网管系统的告警缓存有很多需要多个查询条件组合检索的场景。然而,现有的哈希表只能存储一个查询条件,其仅能够保证单个查询条件检索的效率,在面对多个查询条件组合检索时,需要对整个数据域进行遍历筛选出所需要的告警数据,查询效率很低,进而导致告警数据管理的实用性和有效性不好。因此,如何设计一种能够提高告警数据管理的实用性和有效性的方法是亟需解决的技术问题。
技术实现思路
1、针对上述现有技术的不足,本发明所要解决的技术问题是:如何提供一种用于通信设备的数据管理方法,能够实现多个查询条件的组合检索,并且能够有效保证告警数据的检索效率,从而能够提高告警数据管理的实用性和有效性。
2、为了解决上述技术问题,本发明采用了如下的技术方案:
3、用于通信设备的数据管理方法,包括:
4、s1:获取上报的待存储告警数据;
5、s2:确定待存储告警数据关联的所有查询条件;
6、s3:按使用频次的降序对所有查询条件进行依次排序;
7、s4:基于各个查询条件构建对应的查询层,并将待存储告警数据缓存于最后一层的查询层,进而根据查询条件的排序结果对各个查询层进行排序,以组合生成对应的多层嵌套哈希表。
8、优选的,通过如下步骤生成多层嵌套哈希表:
9、s401:基于每个查询条件构建对应的查询层;
10、s402:基于所有查询条件的排序结果对各个查询层进行排列;
11、s403:将待存储告警数据缓存于最后一层查询层,并与最后一层查询层的查询条件打包生成最后一层查询层的哈希数据;
12、s404:将当前查询层的哈希数据存储于上一层查询层中,并与上一层查询层的查询条件打包生成对应上一层查询层的哈希数据;
13、s405:将对应上一层查询层作为当前查询层,并返回步骤s404;
14、s406:从最后一层查询层开始循环执行步骤s404至s405,直至将第二层查询层的哈希数据存储于第一层查询层时,生成对应的多层嵌套哈希表。
15、优选的,通过如下步骤实现多个查询条件的组合检索:
16、s01:获取输入的所有目标查询条件,并按使用频次的降序对目标查询条件进行排序;
17、s02:检索第一层查询层的查询条件满足排序第一的目标查询条件的多层嵌套哈希表;
18、s03:在检索的多层嵌套哈希表中,按排序顺序依次检索剩余的目标查询条件,直至获取对应的目标哈希数据;
19、s04:基于目标哈希数据解析得到对应的目标告警数据。
20、优选的,步骤s02中,若不存在第一层的查询条件满足排序第一的目标查询条件的多层嵌套哈希表,则依次遍历所有多层嵌套哈希表的各层查询层,直至检索到查询条件满足排序第一的目标查询条件的多层嵌套哈希表。
21、优选的,通过如下步骤实现单个查询条件的检索:
22、s11:获取输入的目标查询条件;
23、s12:检索第一层查询层的查询条件满足目标查询条件的多层嵌套哈希表;
24、s13:将多层嵌套哈希表第一层的哈希数据作为目标哈希数据;
25、s14:基于目标哈希数据解析得到对应的目标告警数据。
26、优选的,步骤s12中,若不存在第一层的查询条件满足目标查询条件的多层嵌套哈希表,则依次遍历所有多层嵌套哈希表的各层查询层,直至检索到查询条件满足目标查询条件的多层嵌套哈希表。
27、优选的,步骤s13中,将对应多层嵌套哈希表的对应查询层的哈希数据作为目标哈希数据。
28、优选的,对缓存的数据进行增删改操作时,对多层嵌套哈希表进行逐层筛选以确定待维护的数据节点,进而对待维护的数据节点执行对应的增删改操作。
29、本发明还公开了一种可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现本发明的用于通信设备的数据管理方法的步骤。
30、本发明中用于通信设备的数据管理方法与现有技术相比,具有如下有益效果:
31、本发明通过确定告警数据关联的所有查询条件,并按使用频次的降序对所有查询条件进行依次排序,进而基于各个查询条件构建查询层并根据查询条件的排序结果对各个查询层进行排序以组合生成对应的多层嵌套哈希表,用以缓存告警数据。一方面,本发明通过多层嵌套哈希表缓存告警数据,而多层嵌套哈希表的各个查询层基于对应的查询条件生成,使得能够通过逐层检索查询层的方式完成多个查询条件的检索,即能够实现多个查询条件的组合检索,从而能够提高告警数据管理的实用性;另一方面,本发明的多层嵌套哈希表中每层查询层分别对应一个查询条件,使得检索每层查询层时的检索复杂度都是一,这既能够保证多个查询条件组合检索的效率,还能够节约告警数据的存储空间,从而能够提高告警数据管理的有效性。此外,本发明按使用频次的降序对所有查询条件进行依次排序,并且基于查询条件的排序结果组合生成多层嵌套哈希表,使得多层嵌套哈希表中使用频次更高的查询条件能够排在更靠前的层次,这有利于通过更少的检索次数实现多个查询条件的检索,从而能够进一步提高多个查询条件组合检索的效率。
1.用于通信设备的数据管理方法,其特征在于,包括:
2.如权利要求1所述的用于通信设备的数据管理方法,其特征在于,通过如下步骤生成多层嵌套哈希表:
3.如权利要求2所述的用于通信设备的数据管理方法,其特征在于,通过如下步骤实现多个查询条件的组合检索:
4.如权利要求3所述的用于通信设备的数据管理方法,其特征在于:步骤s02中,若不存在第一层的查询条件满足排序第一的目标查询条件的多层嵌套哈希表,则依次遍历所有多层嵌套哈希表的各层查询层,直至检索到查询条件满足排序第一的目标查询条件的多层嵌套哈希表。
5.如权利要求2所述的用于通信设备的数据管理方法,其特征在于,通过如下步骤实现单个查询条件的检索:
6.如权利要求5所述的用于通信设备的数据管理方法,其特征在于:步骤s12中,若不存在第一层的查询条件满足目标查询条件的多层嵌套哈希表,则依次遍历所有多层嵌套哈希表的各层查询层,直至检索到查询条件满足目标查询条件的多层嵌套哈希表。
7.如权利要求6所述的用于通信设备的数据管理方法,其特征在于:步骤s13中,将对应多层嵌套哈希表的对应查询层的哈希数据作为目标哈希数据。
8.如权利要求2所述的用于通信设备的数据管理方法,其特征在于:对缓存的数据进行增删改操作时,对多层嵌套哈希表进行逐层筛选以确定待维护的数据节点,进而对待维护的数据节点执行对应的增删改操作。
9.一种可读存储介质,其特征在于,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现如权利要求1-8任一项所述的用于通信设备的数据管理方法的步骤。