资源拓扑排序方法、装置、设备及存储介质与流程

文档序号:34440613发布日期:2023-06-13 01:19阅读:47来源:国知局
资源拓扑排序方法、装置、设备及存储介质与流程

本技术涉及数据处理,尤其涉及一种资源拓扑排序方法、装置、设备及存储介质。


背景技术:

1、当前在运营商的网络资源可视化系统中,对网络资源进行拓扑排序时,可以首先用图的形式表达网络资源的拓扑模型,然后基于网络资源的拓扑模型,通过图的拓扑算法构建整个系统的拓扑关系,以将对于网络资源的拓扑分析转换成对于图的拓扑分析。具体的,可以先将网络资源的拓扑模型转化为一个有向图g=(v,e(s))(v为节点集合,e为有向边集合,s为边的属性),然后采用堆栈技术对网络资源的拓扑模型进行搜索,以将网络资源的拓扑结构表述为链表关系,从而基于网络资源的拓扑结构,通过图论的深度或者广度搜索法对网络资源进行拓扑排序。

2、在对网络资源进行拓扑排序时,还可以引入图形数据库(例如neo4j),以简化对网络资源进行拓扑排序时的拓扑计算。具体的,可以采用类似关系数据库的逻辑建模的方式,按照图形数据库的模式构建网络资源的图的模式(主要模式为节点、关系、属性)。在图的模式构建完成之后,可以从信息系统中按照图形数据库的模式向图的模式导入数据,以根据图形数据库提供的查询语言对网络资源进行拓扑排序。

3、在上述方法中,通过图论的深度或者广度搜索法对网络资源进行拓扑排序时,进行拓扑排序的程序需要采用递归的形式,导致程序编程和维护较复杂,在实时运算的场景下,运算效率较低。引入图形数据库对网络资源进行拓扑排序时,需要维护原系统数据库与图形数据库之间的数据一致性,加大了系统的复杂度,同时,由于图形数据库的查询语言不具有统一标准,导致图形数据库的运用门槛较高,成本支出较大。从而,对网络资源进行拓扑排序的效率较低。


技术实现思路

1、本技术提供一种资源拓扑排序方法、装置、设备及存储介质,用于解决通过图论的深度或者广度搜索法进行拓扑排序的运算过程复杂、引入图形数据库进行拓扑排序需要维护数据一致性的问题,从而提高对网络资源进行拓扑排序的效率。

2、为达到上述目的,本技术采用如下技术方案:

3、第一方面,提供了一种资源拓扑排序方法,方法包括:基于多个网络资源之间的连接关系构建目标矩阵,目标矩阵包括三类数值;其中,第一类数值表示一个网络资源自身具有连接关系,第二类数值表示第i个网络资源到第j个网络资源之间具有连接关系,第三类数值表示第i个网络资源到第j个网络资源之间不具有连接关系,i和j均为正整数;对目标矩阵执行n次目标操作,得到n个目标结果,直至从第n+1次目标操作得到的结果中确定不存在目标信息时,结束执行目标操作;其中,第n次目标操作为:确定目标矩阵的n+1次幂,目标信息用于指示两个网络资源之间具有连接关系,n为正整数;从目标矩阵和n个目标结果中获取多个目标信息,并基于多个目标信息得到目标列表,目标列表中包括多组连接关系,一组连接关系用于指示具有连接关系的两个网络资源之间对应的步长。

4、在一种可能的实现方式中,基于多个网络资源之间的连接关系构建目标矩阵,包括:基于多个网络资源之间的连接关系构建目标有向图,目标有向图包括多个实体和多个有向连接线,多个实体中的一个实体用于指示一个网络资源,多个有向连接线中的一个有向连接线用于指示两个网络资源之间的连接关系;基于目标有向图构建连接关系表,并通过连接关系表构建目标矩阵,连接关系表用于指示多个有向连接线中的每个有向连接线对应的两个网络资源之间的连接关系。

5、在一种可能的实现方式中,从目标矩阵和n个目标结果中获取多个目标信息,并基于多个目标信息得到目标列表,包括:基于目标矩阵中包括的至少一个第二类数值,确定至少一个第二类数值中每个第二类数值指示的具有连接关系的两个网络资源,至少一个第二类数值中的一个第二类数值为一个目标信息;基于至少一个第二类数值中每个第二类数值指示的具有连接关系的两个网络资源,构建包括至少一个连接关系的预设列表;依次从n个目标结果中获取多个目标信息,并将多个目标信息指示的多个连接关系添加至预设列表中,得到目标列表,一个目标结果中包括至少一个目标信息。

6、在一种可能的实现方式中,方法还包括:当需要确定与目标网络资源具有连接关系、且对应的步长小于或等于目标步长的网络资源时,通过结构化查询语言sql语句从目标列表中获取所需的网络资源。

7、第二方面,提供了一种资源拓扑排序装置,资源拓扑排序装置包括:处理单元和获取单元;处理单元,用于基于多个网络资源之间的连接关系构建目标矩阵,目标矩阵包括三类数值;其中,第一类数值表示一个网络资源自身具有连接关系,第二类数值表示第i个网络资源到第j个网络资源之间具有连接关系,第三类数值表示第i个网络资源到第j个网络资源之间不具有连接关系,i和j均为正整数;处理单元,还用于对目标矩阵执行n次目标操作,得到n个目标结果,直至从第n+1次目标操作得到的结果中确定不存在目标信息时,结束执行目标操作;其中,第n次目标操作为:确定目标矩阵的n+1次幂,目标信息用于指示两个网络资源之间具有连接关系,n为正整数;获取单元,用于从目标矩阵和n个目标结果中获取多个目标信息,并基于多个目标信息得到目标列表,目标列表中包括多组连接关系,一组连接关系用于指示具有连接关系的两个网络资源之间对应的步长。

8、在一种可能的实现方式中,处理单元,还用于基于多个网络资源之间的连接关系构建目标有向图,目标有向图包括多个实体和多个有向连接线,多个实体中的一个实体用于指示一个网络资源,多个有向连接线中的一个有向连接线用于指示两个网络资源之间的连接关系;处理单元,还用于基于目标有向图构建连接关系表,并通过连接关系表构建目标矩阵,连接关系表用于指示多个有向连接线中的每个有向连接线对应的两个网络资源之间的连接关系。

9、在一种可能的实现方式中,该资源拓扑排序装置还包括确定单元;确定单元,用于基于目标矩阵中包括的至少一个第二类数值,确定至少一个第二类数值中每个第二类数值指示的具有连接关系的两个网络资源,至少一个第二类数值中的一个第二类数值为一个目标信息;处理单元,还用于基于至少一个第二类数值中每个第二类数值指示的具有连接关系的两个网络资源,构建包括至少一个连接关系的预设列表;获取单元,还用于依次从n个目标结果中获取多个目标信息;处理单元,还用于将多个目标信息指示的多个连接关系添加至预设列表中,得到目标列表,一个目标结果中包括至少一个目标信息。

10、在一种可能的实现方式中,获取单元,还用于当需要确定与目标网络资源具有连接关系、且对应的步长小于或等于目标步长的网络资源时,通过结构化查询语言sql语句从目标列表中获取所需的网络资源。

11、第三方面,一种电子设备,包括:处理器以及存储器;其中,存储器用于存储一个或多个程序,一个或多个程序包括计算机执行指令,当电子设备运行时,处理器执行存储器存储的计算机执行指令,以使电子设备执行如第一方面的一种资源拓扑排序方法。

12、第四方面,提供了一种存储一个或多个程序的计算机可读存储介质,该一个或多个程序包括指令,上述指令当被计算机执行时使计算机执行如第一方面的一种资源拓扑排序方法。

13、本技术提供了一种资源拓扑排序方法、装置、设备及存储介质,应用于对网络资源进行拓扑排序的场景中。在需要对网络资源进行拓扑排序时,可以基于多个网络资源之间的连接关系构建包括三类数值的目标矩阵,其中,第一类数值表示一个网络资源自身具有连接关系,第二类数值表示第i个网络资源到第j个网络资源之间具有连接关系,第三类数值表示第i个网络资源到第j个网络资源之间不具有连接关系。进一步的,对目标矩阵执行n次目标操作,直至从第n+1次目标操作得到的结果中确定不存在指示两个网络资源之间具有连接关系的目标信息时,得到n个目标结果,结束执行目标操作。进而,从目标矩阵和n个目标结果中获取多个目标信息,并基于多个目标信息得到包括多组连接关系的目标列表,以指示具有连接关系的两个网络资源之间对应的步长。通过上述方法,在需要对网络资源进行拓扑排序时,可以基于多个网络资源之间的连接关系构建目标矩阵,然后对目标矩阵执行n次目标操作,得到n个目标结果,以从目标矩阵和n个目标结果中获取多个目标信息,并基于多个目标信息得到目标列表。从而解决通过图论的深度或者广度搜索法进行拓扑排序的运算过程复杂、引入图形数据库进行拓扑排序需要维护数据一致性的问题。从而,提高了对网络资源进行拓扑排序的效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1