一种关联查询的系统及其方法

文档序号:6643887阅读:186来源:国知局
专利名称:一种关联查询的系统及其方法
技术领域
本发明涉及一种查询方法,具体来说,涉及一种应用于网络管理系统中的关联查询的系统及其方法。
背景技术
在当前的网络管理系统中,例如,在电信网络管理系统中,一方面是被管理对象(下称被管对象或对象)的数量越来越大,配置数据越来越多,配置数据的关系也越来越错综复杂,而基于这些数据之上的业务数据更是种类繁多,复杂多变;另一方面是随着社会的发展和市场竞争的加剧,用户对系统的需求越来越个性化和多样化,对系统的响应速度要求越来越高,对响应结果要求越来越智能化。面对这样的矛盾,如何快速直观地获取数据,如何准确地获取与当前数据符合某种相关性和过滤条件的数据,如何实现根据不同的业务需求灵活调整相关性和过滤条件成了解决问题的关键。
在现有的一种技术中,是采用直接将特定的两个被管理对象的关联查询关系固定化,这样就可以进行特定的查询。但这种方法存在有不足之处由于固定了两个被管理对象的关联查询关系,如果要变动他们之间的关联查询关系会非常困难,不易调整。且这种方法只能查询部分对象的关联关系,因为如果要列出所有两个被管对象之间的关联查询关系,工作量很大,且其中代码总量大,并存在有重复的部分,导致开发和维护成本高,目前这种方法主要用来实现部分重要对象间的特定关联查询;而且,不易实现多级关联查询。
还有一种技术是通过采用包容关系组织(如多叉树)对象,并利用遍历方法来进行对象间的关联查询。但是这种方法也存在有不足之处采用包容关系无法完全描述电信网被管对象间错综复杂的关系;采用包容关系在搜索两个对象的关联关系时实现的算法复杂、效率低;对对象间的关联关系进行增加、修改、删除等操作时需要作很大的变动,不够直观。

发明内容
本发明要解决的技术问题在于,针对现有查询方法存在的不足,提供了一种关联查询方系统及其方法,其能够很方便地查询两个被管对象间的关联关系;且很容易实现多级关联查询。
本发明为解决其技术问题所采用的技术方案在于提供一种关联查询系统,其包括有可接收用户查询要求的查询管理器及存储有被管对象的数据的数据库系统,进一步包括关联关系配置管理器,存储有被管对象间的关联关系配置信息;图管理器中存储有根据被管对象间的关联关系配置信息而生成的被管理对象的关联关系图;算法迭代器中存储有预定的算法,用来求解所述关联关系图中的路径,并将求解的最优结果返回给图管理器;所述查询管理器可根据图管理器返回的最优路径生成关联查询语句,并传送给所述数据库系统进行查询。
在本发明的关联查询的系统中,所述关联关系图中包括有两个或两个以上节点,每一节点包括有节点数据和边数据,其中节点数据中存储被管理对象的信息,边数据中存储有对象间关联关系信息,所述关联关系图中的节点可以被增加、删除或修改。
在本发明的关联查询的系统中,所述关联关系配置管理器中的被管对象间的关联关系配置信息,通过手工编写或者通过可视化工具生成。
在本发明的关联查询的系统中,所述算法迭代器中的算法可以被替换。
本发明还提供一种关联查询的方法,该方法包括(a)根据被管理对象间的关联关系建立一个关联关系图,该关联关系存储于图管理器中;(b)查询管理器接收来自用户的查询要求,并将该查询要求转送给图管理器,图管理器调用算法迭代器中的预定的算法;(c)算法迭代器根据所述算法求解所述查询要求中从源节点到目的节点间的最优路径,并将该最优路径结果返回给图管理器,图管理器将该最优路径结果返回给查询管理器;(d)查询管理器接收来自图管理器的最优路径,将其生成关联查询语句,并传给数据库系统;(e)数据库系统根据所述关联查询语句进行查询,并将查询结果传回给查询管理器。
在本发明的关联查询方法中,进一步包括对图的最优路径定义有迭代算子的步骤,所述算法迭代器中算法可以被替换。
在本发明的关联查询方法中,所述步骤(d)进一步包括当图管理器返回的最优路径超过一个时,对这些最优路径进行合并,获得一条最终的最优路径。
在本发明的关联查询方法中,所述对多个最优路径进行合并的的步骤,包括对所述最优路径进行“与”运算、“或”运算、“非”运算或“与”、“或”、“非”的组合运算的步骤。
在本发明的关联查询方法中,所述步骤(d)中生成关联查询语句的步骤进一步包括根据所得到的最优路径生成满足不同语法要求的查询语句,传给数据库系统。
在本发明的关联查询方法中,所述步骤(d)中生成关联查询语句的步骤是将每条路径单独生成查询语句并传送给数据库系统;并在步骤(e)中将得到各个结果集进行集合的逻辑运算,所述逻辑运算包括“与”运算、“或”运算、“非”运算或“与”、“或”、“非”的复合运算。
实施本发明的关联查询系统及其方法,具有以下有益效果在本发明中,通过建立被管对象的关联关系图,将复杂的多级关联查询简化为对图的求解,使用图的数据结构,增加、删除、修改被管理对象的关联关系更加直观方便,效率高,且其中迭代算法器中的算法可以很方便地被替换以满足不同的要求。用户在不用知道各数据的具体关联关系的情况下,只需简单地发出一个从源对象到目的对象的查询请求,就可以轻松地得到满足查询要求的结果。


下面将结合附图及实施例对本发明作进一步说明,附图中图1是本发明一种关联查询系统的结构示意图;图2是本发明中建立关联关系图的示意图;
图3是本发明中最优路径求解示意图;图4是本发明一种关联查询方法的主流程图。
具体实施例方式
为了使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明图1是本发明的所实施的系统的结构示意图;该系统包括有查询管理器、数据库系统、关联关系配置管理器、图管理器及算法迭代器。
其中,查询管理器用于接收来自用户(请求方)的查询要求,并将该查询要求传给图管理器,并能生成查询语句,与数据库系统进行交互;关联关系配置管理器中,存储有被管对象间的关联关系配置信息,并可根据该关联关系配置信息及其数据结构建立起对象间的关联关系图。
图管理器中存储有关联关系图,该关联关系图是通过配置文件生成。其中,配置文件可以手工写,也可以通过可视化工具生成;算法迭代器可以是一个独立的服务或进程,也可以是一个函数库。算法迭代器存储有多种算法,可用来求解关联关系图中的路径,并将结果返回给图管理器。在本发明中,算法迭代器通过一组接口独立出来,这样可以方便使自定义的算法包,也可以使用专利业的算法包,甚至可以不断添加算法,可提高灵活性和扩展性。
数据库系统中存放有电信网络管理系统中的各种被管对象的各种数据表(如配置数据、属性数据表等)。
如图2所示,是本发明中的一种对象关联关系图示意图。本发明以具有图2所示对象关系图结构的网络管理系统为实施例,也可以将图2所示简单的对象关系图视为整个网络管理系统对象关系图上的一个子图。该图中包括有多个不同的对象节点(如对象10、对象20等),图中的节点数据中存储实际需要的有关的对象信息,图中的边数据中存储对象间关联关系信息及其他相关信息(如遍历控制信息)。而不同的对象节点之间存在有关联关系以连接线的形式表示。在该图中,如果要新增一个对象(如新增对象31),只需创建一个节点数据,然后将关联关系信息填入节点的边信息中,同时再更新一下相邻的节点的边信息即可,对其他的节点没有任何影响。同理,可以对节点进行删除或修改等操作。
如图3所示,是本发明中,对象关联关系图中最优查询路径的示意图。本发明中,将查询请求中涉及到的源对象和目的对象,转化成源对象和目的对象之间的路径求解。图中,在不同节点之间的数值为遍历值。其中带箭头的粗线条表示的就是源对象到目的对象之间的最优查询路径。
图4是本发明的一个实施例的流程图。下面对其进行详细说明第一步从关联关系配置管理器中读取网络管理系统中的所有对象以及各对象之间的关联关系;在该步骤中,也可以用手工的方式整理出相应的关联关系,然后用配置文件、配置表、配置图的方式保存下来。或者可以是用程序、工具等方法自动产生配置文件、配置表、配置图。或者可以是一个动态的进程、服务等,在运行时为其他步骤提供动态求解关联关系。
第二步根据图2中新增图节点的方式,将网络管理系统中的所有对象逐一增加到如图表1所示的图结构中,形成一张完整的对象关联关系图,图中的节点数据中存储实际需要的有关的对象信息,图中的边数据中存储对象间关联关系信息和遍历控制信息。
第三步建立起关联关系图后,用户就可以向查询管理器发送一个查询请求,对图中的任意两个对象进行关联查询了。以图3中为例,用户向查询管理器下发一个从“源对象”到“目的对象”的关联查询请求。
第四步则查询管理器向图管理器转发该关联查询请求(包括有必要的参数,如源对象、目的对象等),求取从“源对象”到“目的对象”的最优路径。
第五步图管理器则调用图的算法迭代器进行求解“源对象”到“目的对象”的最优路径。其中算法迭代器中预定义有相应算法,对图的最优路径定义有迭代算子。算法迭代器调用指定的算法(该算法受迭代器支持,且该算法可以不断扩充)进行求解,得出最优路径。在这里,由于将算法迭代器独立出来,可以很方便地替换各种算法,提高了方案的灵活性和适应性。另外,我们从图3中还可以看到,通过控制图中每条关联关系边的权重,还可以灵活地根据一定的规则控制最优关联路径求解的结果,这在需要叠加业务逻辑的应用上将会非常有用。
第六步算法迭代器向图管理器返回得到的路径。
第七步图管理器向查询管理器返回得到路径。在有些时候,一个查询可能需要得到多条路径(如在多个节点之间),这可以重复上述求关联路径的步骤,得出了多条路径。
第八步如果有多条路径时,以根据一定的原则先进行路径合并,得出一条最终的最优路径。所述一定的原则,可以是包括“与”运算、“或”运算、“非”运算或“与”、“或”、“非”的组合运算。
第九步根据所得到的最优路径生成满足不同语法要求(如SQL)的查询语句,下发到数据库系统进行查询;也可以直接将每条路径单独生成查询语句下发查询,然后将得到各个结果集进行集合论的各种逻辑运算,该逻辑运算包括诸如“与”运算、“或”运算、“非”运算或“与”、“或”、“非”的复合运算。这样,我们就能支持非常复杂的关联查询需求了,这在应用上有重要的意义。另外,该生成关联查询语句的过程可以通过自定义的模块或采用第三方的包来产生针对多种数据库系统都可以执行的SQL语句、存储过程、过程调用等方式。
第十步数据库系统根据所接收到的查询语句,进行查询,并将查询结果返回给该查询管理器。
以上所述,仅为本发明的一个实施例而已,是以网络管理系统为例进行说明,并非用于限定本发明的保护范围,在本质上,本发明适合于所有对数据间具网状关联关系的信息系统的管理,。
在本发明中,对网络管理系统的被管理对象进行关联查询的方法,是通过建立对象关联关系图,将复杂的多级关联查询简化为对图的求解,从而带来了如下好处1)、对电信网络管理系统中的被管理对象的描述在概念上更加准确,因此也更适合解决相关的应用。
2)、使用图的数据结构,增加、删除、修改被管理对象的关联关系直观,局部性好,减少维护成本;
3)、使用图的经典算法,提高了空间和运行效率;4)、将迭代算法器独立出来,可以非常方便地替换不同的算法以满足不同的要求;5)、利用图管理关联关系,甚至可以通过设置图中的元素的权重和标志,将特殊的应用逻辑叠加到关联关系中,从而支持个性化的查询需求,提高用户满意度。
通过本发明提供的方法,使用户在不用知道各数据的具体关联关系的情况下,只需简单地发出一个从源对象到目的对象的查询请求,就可以轻松地得到满足查询要求的结果,其他复杂的关系由图管理器、算法迭代器等屏蔽起来了。
权利要求
1.一种关联查询的系统,其包括有可接收用户查询要求的查询管理器及存储有被管对象的数据的数据库系统,其特征在于,进一步包括关联关系配置管理器,存储有被管对象间的关联关系配置信息;图管理器中存储有根据被管对象间的关联关系配置信息而生成的被管理对象的关联关系图;算法迭代器中存储有预定的算法,用来求解所述关联关系图中的路径,并将求解的最优结果返回给图管理器;所述查询管理器可根据图管理器返回的最优路径生成关联查询语句,并传送给所述数据库系统进行查询。
2.如权利要求1所述的关联查询的系统,其特征在于,所述关联关系图中包括有两个或两个以上的节点,每一节点包括节点数据和边数据,其中节点数据中存储被管理对象的信息,边数据中存储有对象间关联关系信息,所述关联关系图中的节点可以被增加、删除或修改。
3.如权利要求1或2所述的关联查询的系统,其特征在于,所述关联关系配置管理器中的被管对象间的关联关系配置信息通过手工编写或者通过可视化工具生成。
4.如权利要求3所述的关联查询系统,其特征在于,所述算法迭代器中的算法可以被替换。
5.一种关联查询的方法,其特征在于,该方法包括(a)根据被管理对象间的关联关系建立一个关联关系图,该关联关系存储于图管理器中;(b)查询管理器接收来自用户的查询要求,并将该查询要求转送给图管理器,图管理器调用算法迭代器中的预定的算法;(c)算法迭代器根据所述算法求解所述查询要求中从源节点到目的节点间的最优路径,并将该最优路径结果返回给图管理器,图管理器将该最优路径结果返回给查询管理器;(d)查询管理器接收来自图管理器的最优路径,将其生成关联查询语句,并传给数据库系统;(e)数据库系统根据所述关联查询语句进行查询,并将查询结果传回给查询管理器。
6.如权利要求5所述的关联查询的方法,其特征在于,所述步骤(d)进一步包括当图管理器返回的最优路径超过一个时,对这些最优路径进行合并,获得一条最终的最优路径。
7.如权利要求6所述的关联查询的方法,其特征在于,所述对多个最优路径进行合并的步骤,包括对所述最优路径进行“与”运算、“或”运算、“非”运算或“与”、“或”、“非”的组合运算的步骤。
8.如权利要求7所述的关联查询的方法,其特征在于,所述步骤(d)中生成关联查询语句的步骤进一步包括根据所得到的最优路径生成满足不同语法要求的查询语句,传给数据库系统。
9.如权利要求7所述的关联查询的方法,其特征在于,所述步骤(d)中生成关联查询语句的步骤是将每条路径单独生成查询语句并传送给数据库系统;并在步骤(e)中将得到各个结果集进行集合的逻辑运算,所述逻辑运算包括“与”运算、“或”运算、“非”运算或“与”、“或”、“非”的复合运算。
全文摘要
本发明提供一种关联查询的系统,其包括有可接收用户查询要求的查询管理器、存储有被管对象数据的数据库系统、存储有被管对象间的关联关系配置信息的关联关系配置管理器、存储有被管理对象的关联关系图的图管理器及用来求解所述关联关系图中的路径的算法迭代器。该查询管理器可根据图管理器返回的最优路径生成关联查询语句,并传送给所述数据库系统进行查询。本发明还提供一种关联查询的方法。本发明通过建立被管对象的关联关系图,将复杂的多级关联查询简化为对图的求解,使用图的数据结构,增加、删除、修改被管理对象的关联关系更加直观方便,效率高,且其中迭代算法器中的算法可以很方便地被替换以满足不同的要求。
文档编号G06F17/30GK1851696SQ20051010085
公开日2006年10月25日 申请日期2005年10月26日 优先权日2005年10月26日
发明者郑增加, 任宝刚 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1