一种基于数据关联网络模型的实体关系搜索方法及装置与流程

文档序号:12667599阅读:194来源:国知局
一种基于数据关联网络模型的实体关系搜索方法及装置与流程

本发明涉及数据关联处理和数据可视化技术领域,尤其涉及一种基于数据关联网络模型的实体关系搜索方法及装置。



背景技术:

在表述现实世界的物体及其关联时,通常会采用实体关系图谱的表示方法,以表示各种不同实体之间的关联关系。传统的实体关系图谱的表示方法一般都是静态的、一次性的,适用于需要表现的实体较少,关系较为简单的情形。

申请号为CN2016101357335的中国发明专利申请,提出了一种可动态扩展数据关联网络图的表示方法及系统,使得用户通过一个已知的实体,能够动态的、理论上无限的扩展这个实体的关联网络。但该申请的局限在于,如果用户已知两个或者两个以上的实体并想知道这几个实体之间直接或者间接的关系,只能分别搜索两个或两个以上的实体得到各自的关联网络,然后通过分析各自的关联网络得到两个或两个以上的实体之间直接或者间接的关系,无法通过搜索直接得到两个或两个以上的实体之间直接或者间接的关系。



技术实现要素:

本发明的目的是提供一种基于数据关联网络模型的实体关系搜索方法及装置,可以克服背景技术中无法直接搜索两个或两个以上的实体之间直接或者间接的关系的技术问题,搜索高效并通过直观、友好的方式进行展现。

为了实现上述目的,本发明技术方案如下:

一种基于数据关联网络模型的实体关系搜索方法,用于根据预设的数据关联网络模型,查询待搜索实体之间的关联网络,所述实体关系搜索方法,包括:

步骤1、将待搜索的至少两个实体作为搜索端点放入搜索端点集合;

步骤2、基于预设的数据关联网络模型,查询与搜索端点集合中各个实体直接关联的关联实体,将查询得到的关联实体放入搜索端点集合;

步骤3、判断搜索端点集合中的全部实体是否构成最小连通图,如果构成最小连通图,则结束搜索,输出待搜索实体的关联网络,如果不构成最小连通图,则返回步骤2进行下一步查询。

进一步地,所述步骤3由主进程来执行,所述步骤2由子进程来执行,所述主进程开启多个子进程。

进一步地,所述主进程执行如下操作:

a、在定时器到达时,取搜索端点集合中的全部实体;

b、判断搜索端点集合中的全部实体是否构成最小连通图,如果不能构成最小连通图,则执行步骤c,如果可以构成最小连通图,则对所有子进程发送停止信号,搜索结束;

c、判断是否满足设定的停止条件,如果不满足停止条件,则执行步骤d,如果满足,则对所有子进程发送停止信号,搜索结束;

d、将搜索端点集合中新增的关联实体插入已经构建的关联网络并保存,等待下一次定时器到达。

进一步地,所述子进程执行如下操作:

1)、根据权重从搜索端点集合中选择一个权重最高的未查询过搜索端点;

2)、查询该搜索端点直接关联的关联实体;

3)、标记所查询出的关联实体的权重,并将这些关联实体插入到搜索端点集合;

4)、重复步骤1)-3),直到接收到主进程的停止信号。

本发明所述关联网络包括搜索端点集合中全部实体,及实体之间通过有向线连接表示的关系。

本发明还提出了一种基于数据关联网络模型的实体关系搜索装置,用于根据预设的数据关联网络模型,查询待搜索实体之间的关联网络,所述实体关系搜索装置包括:

接收模块,用于将待搜索的至少两个实体作为搜索端点放入搜索端点集合;

查询模块,用于基于预设的数据关联网络模型,查询与搜索端点集合中各个实体直接关联的关联实体,将查询得到的关联实体放入搜索端点集合;

判断模块,用于判断搜索端点集合中的全部实体是否构成最小连通图,如果构成最小连通图,则结束搜索,输出待搜索实体的关联网络,如果不构成最小连通图,则返回查询模块进行下一步查询。

进一步地,所述判断模块连接一个或多个查询模块。

进一步地,所述判断模块执行如下操作:

a、在定时器到达时,取搜索端点集合中的全部实体;

b、判断搜索端点集合中的全部实体是否构成最小连通图,如果不能构成最小连通图,则执行步骤c,如果可以构成最小连通图,则对所有查询模块发送停止信号,搜索结束;

c、判断是否满足设定的停止条件,如果不满足停止条件,则执行步骤d,如果满足,则对所有查询模块发送停止信号,搜索结束;

d、将搜索端点集合中新增的关联实体插入已经构建的关联网络并保存,等待下一次定时器到达。

进一步地,所述查询模块执行如下操作:

1)、根据权重从搜索端点集合中选择一个权重最高的未查询过搜索端点;

2)、查询该搜索端点直接关联的关联实体;

3)、标记所查询出的关联实体的权重,并将这些关联实体插入到搜索端点集合;

4)、重复步骤1)-3),直到接收到判断模块的停止信号。

本发明所述关联网络包括搜索端点集合中全部实体,及实体之间通过有向线连接表示的关系。

本发明提出的一种基于数据关联网络模型的实体关系搜索方法及装置,通过在服务端建立数据关联网络模型,采用分布式计算扩展关联节点、并计算最小连通图算法,计算搜索实体之间的关联关系,响应来自客户端的搜索请求并返回结果;客户端根据服务端返回数据生成数据关联网络图,其中包括搜索实体。本发明的方法和系统为用户在知道两个或多个实体,并且想知道它们之间直接或者间接关系时,提供有效的搜索手段,并且通过直观、友好的方式展现出来。

附图说明

图1为本发明基于数据关联网络模型的实体关系搜索方法流程图;

图2为本发明实施例关联网络示意图;

图3为本发明基于数据关联网络模型的实体装置结构示意图。

具体实施方式

下面结合附图和实施例对本发明技术方案做进一步详细说明,以下实施例不构成对本发明的限定。

以一个城镇辅助决策的应用为例,在该应用中建立有数据关联网络图模型,该数据关联网络图模型包括实体元素、关系和实体聚合。其中,实体类型包括人员、汽车、房产、学校等;关系包括配偶双向关系、父亲/母亲单向关系、车主单向关系、房主单向关系、工作单位单向关系等;实体聚合包括孩子聚合、房产聚合、车产聚合等。基于该数据关联网络图模型,可以搜索到某个实体关联(直接或间接关联)的其他实体,及其对应的关系。

例如用户根据关键字模糊匹配搜索某种实体类型中的实体,假设对“人员”实体类型进行“张”为关键字的搜索。就可以从数据关联网络图模型中搜索出姓名中包含“张”字的所有人员,从中选择出要进行搜索的具体人员,例如为“张国强”,作为后续进行搜索的实体。

随后以“张国强”作为实体进行搜索,从数据关联网络图模型中搜索出与实体“张国强”有直接相关的实体,并用有向线表示实体之间的关系。例如查找到与实体“张国强”有直接相关的实体“巴里童装厂”,“巴里童装厂”是“张国强”的工作单位。进一步还可以通过对所搜索的实体(张国强)有直接关联的实体(巴里童装厂)进行搜索,实现动态扩展,进一步发掘出与实体(张国强)有间接关键的其他实体,形成以实体(张国强)为搜索起点的关联网络。

本发明的总体思路是基于数据关联网络模型,直接搜索两个或两个以上的实体之间直接或者间接的关系,形成关联网络进行展示的方法。如图1所示,本实施例基于数据关联网络模型的实体关系搜索方法,包括:

步骤S1、将待搜索的至少两个实体作为搜索端点放入搜索端点集合;

步骤S2、基于预设的数据关联网络模型,查询与搜索端点集合中各个实体直接关联的关联实体,将查询得到的关联实体放入搜索端点集合;

步骤S3、判断搜索端点集合中的全部实体是否构成最小连通图,如果构成最小连通图,则结束搜索,输出待搜索实体的关联网络,如果不构成最小连通图,则返回步骤S2进行下一步查询。

本实施例在步骤S1中,用户可以通过关键字模糊匹配查询并选择待搜索的实体,例如需要了解实体“张国强”、“巴里童装厂”、“浙E789LY”三者之间的关系,则先对“人员”实体类型进行以“张”为关键字的搜索,并在结果列表内选择“张国强”,将“张国强”作为一个搜索端点。类似的,对“企业”实体类型进行搜索,并选择“巴里童装厂”作为一个搜索端点;对“车辆”实体类型进行搜索,并选择“浙E789LY”作为一个搜索端点。本实施例针对至少两个实体作为搜索端点的应用,因此用户需要先搜索出待搜索的实体至少两个。

在确定待搜索的三个实体作为搜索端点后,将它们放入搜索端点集合。本实施例搜索端点集合是一个工作队列,在实体关系搜索的过程中逐渐加入新的搜索端点。

步骤S2对搜索端点集合中的各个实体展开查询,即分别将每一个待搜索的实体作为一个搜索端点在预设的数据关联网络模型进行查询,查询与搜索端点直接关联的关联实体。

例如,将“张国强”作为一个搜索端点,查询到直接关联的实体“巴里童装厂”;将“巴里童装厂”作为一个搜索端点,查询到直接关联的实体“李燕峰”;将“浙E789LY”作为一个搜索端点,查询到“朱月娥”。

需要注意的是,每次查询只查询该搜索端点实体直接关联的关联实体,但直接关联的关联实体很可能不止一个。例如,在本实施例中,将“巴里童装厂”作为一个搜索端点,查询到直接关联的实体“李燕峰”。实际上,因为“巴里童装厂”所直接关联的关联实体除了法人关系“李燕峰”,还可能有其它的许多直接关联的实体(比如工作单位关系下有很多员工),所以这一步可能会搜索出很多关联实体来,并插入队列。只是“李燕峰”在最后形成的最小连通图上,因此表述了出来。其实际过程“李燕峰”可能并不是唯一取出来进行下一步查询的搜索端点,而是将所有直接关联的关联实体都取出来作为下一步的搜索端点。

将查询得到的关联实体放入搜索端点集合,即将“李燕峰”、“朱月娥”加入到搜索端点集合,使得搜索端点集合包括了5个搜索端点,分别是:“张国强”、“巴里童装厂”、“李燕峰”、“朱月娥”、“浙E789LY”。

随后进入步骤S3进行判断,判断搜索端点集合中的全部实体是否构成最小连通图,由于尚未就“李燕峰”、“朱月娥”进行查询,因此还不构成连通图,需要进一步进行查询,返回步骤S2进行查询。

再次进行查询时,仅查询新增加的搜索端点,即仅查询“李燕峰”、“朱月娥”,发现他们是配偶关系,当没有新增加的搜索端点直接进入步骤S3进行判断,否则将新增加的搜索端点加入到搜索端点集合后进入步骤S3进行判断。

由于已经查询到“李燕峰”与“朱月娥”是配偶关系,搜索端点集合中的实体构成最小连通图,搜索结束,输出如图2所示的关联图。从图中可见,“张国强”和“巴里童装厂”关联是直接的,前者的工作单位为后者;而“浙E789LY”与其它两个搜索端点的关系是间接的,它是“巴里童装厂”的法人“李燕峰”的配偶“朱月娥”的车产。本实施例的实体关系搜索方法把三个搜索端点之间直接或者间接的关系直观的通过关联网络图的形式展示出来。本实施例关联网络包括搜索端点集合中全部实体,及实体之间通过有向线连接表示的关系。

本实施例基于数据关联网络模型的实体关系搜索方法,可以通过一个计算进程逐步进行实体关系搜索,还可以采用主进程和子进程来分别执行方法中的步骤。优选地,为了提高查询性能,本实施例基于数据关联网络模型的实体关系搜索方法采用主进程和子进程来分别执行方法中的步骤,具体地:

主进程根据系统计算性能,开启多个子进程,每一个子进程都是独立工作的,可以采用多个子进程或分布式计算技术。

本实施例主进程启动定时器,周期性执行如下操作:

a、在定时器到达时,取搜索端点集合中的全部实体;

b、判断搜索端点集合中的全部实体是否构成最小连通图,如果不能构成最小连通图,则执行步骤c,如果可以构成最小连通图,则对所有子进程发送停止信号,搜索结束;

c、判断是否满足设定的停止条件,如果不满足停止条件,则执行步骤d,如果满足,则对所有子进程发送停止信号,搜索结束;

d、将搜索端点集合中新增的关联实体插入已经构建的关联网络并保存,等待下一次定时器到达。

由主进程启动的子进程完成如下操作:

1)、根据权重从搜索端点集合中选择一个权重最高的未查询过搜索端点;

2)、查询该搜索端点直接关联的关联实体;

3)、标记所查询出的关联实体的权重,并将这些关联实体插入到搜索端点集合;

4)、重复步骤1)-3),直到接收到主进程的停止信号。

本实施例通过一个主进程和多个子进程,将查询关联实体与最小连通图判断分开,能够优化系统的性能,提高查询效率。

本实施例在主进程工作步骤c中所述的停止条件,可以配置,停止条件可以包括:

(1)关联实体总数,超过设定的查询关联实体总数即停止;

(2)查询深度,超过设定的从搜索端点开始的查询深度即停止;

(3)查询时间,超过设定的查询时间即停止;

需要说明的是,在子进程工作步骤中所述的权重,可以静态配置或者动态计算;如果以静态配置方式,则可以根据不同的实体间关系类型设定权重大小。

本实施例的方法还可以在输出的关联网络的基础上,对每个实体进一步进行查询,实现关联网络的动态扩展,这里不再赘述。

与上述方法对应地,如图3所示,本实施例还提出了一种基于数据关联网络模型的实体关系搜索装置,包括:

接收模块,用于将待搜索的至少两个实体作为搜索端点放入搜索端点集合;

查询模块,用于基于预设的数据关联网络模型,查询与搜索端点集合中各个实体直接关联的关联实体,将查询得到的关联实体放入搜索端点集合;

判断模块,用于判断搜索端点集合中的全部实体是否构成最小连通图,如果构成最小连通图,则结束搜索,输出待搜索实体的关联网络,如果不构成最小连通图,则返回查询模块进行下一步查询。

容易理解的是,本实施例中各模块的工作与上述方法对应,判断模块对应主进程的操作,查询模块对应子进程的操作,判断模块连接一个或多个查询模块。

对应地,本实施例判断模块执行如下操作:

a、在定时器到达时,取搜索端点集合中的全部实体;

b、判断搜索端点集合中的全部实体是否构成最小连通图,如果不能构成最小连通图,则执行步骤c,如果可以构成最小连通图,则对所有查询模块发送停止信号,搜索结束;

c、判断是否满足设定的停止条件,如果不满足停止条件,则执行步骤d,如果满足,则对所有查询模块发送停止信号,搜索结束;

d、将搜索端点集合中新增的关联实体插入已经构建的关联网络并保存,等待下一次定时器到达。

对应地,本实施例查询模块执行如下操作:

1)、根据权重从搜索端点集合中选择一个权重最高的未查询过搜索端点;

2)、查询该搜索端点直接关联的关联实体;

3)、标记所查询出的关联实体的权重,并将这些关联实体插入到搜索端点集合;

4)、重复步骤1)-3),直到接收到判断模块的停止信号。

容易理解的是,本实施例的装置应用在搜索系统的服务器端,搜索系统通常包括用户进行查询的客户端,和位于后台的服务器端。本实施例的装置位于服务器端,用户在客户端上选择待搜索的实体,发送到位于服务器端的实体关系搜索装置,实体关系搜索装置完成查询后将输出的关联网络发送到客户端进行显示。

以上实施例仅用以说明本发明的技术方案而非对其进行限制,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

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