当前位置: 首页 > 专利查询>湖南大学专利>正文

子图模式监控方法、装置、设备及存储介质制造方法及图纸

技术编号:39065936 阅读:25 留言:0更新日期:2023-10-12 19:58
本申请提供一种子图模式监控方法及相关设备,可以对数据图进行快速查找。该方法包括:确定目标边所对应的目标三元组;通过更新表激活查询图索引对数据图所对应的查询图集合进行遍历,以得到查询图子集;若第一顶点被第一目标顶点所对应的标签覆盖,且目标映射表中顶点数量与第一查询图中的顶点数量不匹配,且第二顶点的正常扩展点依赖集不为空,第二顶点的虚拟扩展点依赖集为空,则将第二顶点所对应的标签与数据图中第二目标顶点的邻居顶点的标签进行匹配,以得到与第二顶点相匹配的第一候选集;将第三顶点对应的标签与第三目标顶点的邻居顶点的标签进行匹配,以得到第三顶点所匹配的第二候选集;根据第一候选集以及第二候选集生成查询结果。集生成查询结果。集生成查询结果。

【技术实现步骤摘要】
子图模式监控方法、装置、设备及存储介质


[0001]本申请属于数据处理领域,特别涉及一种子图模式监控方法、装置及存储介质。

技术介绍

[0002]随着移动应用的发展,大量的复杂数据以高速的方式被动态地创建。这些数据包含有价值的信息,可以很容易地被建模为图。对这些动态图结构的数据进行有效的分析是非常重要的。
[0003]动态图子图匹配算法是当前学术界的热点问题。一些子图匹配算法不保留任何辅助数据来加速搜索。IncMat算法提议检索以更新边缘为中心的子图,并对检索到的部分进行子图匹配。MultiView算法将每个查询作为一个视图,并专注于如何将多个视图合并为合并后的视图。IncMat算法和MultiView算法都没有提出关于子图匹配的新方法。Graphflow算法应用worst

case optimal join来评估查询,以大大减少搜索空间。
[0004]以上的算法方法没有保持任何东西,它们不能利用以前的更新计算的中间结果,并遭受重新计算的开销。其他的方法则是在更新发生时创建与查询相关的数据结构/索引来加速评估。
[0005]SJ

Tree算法和TriC算法维护了一个树状的数据结构,树节点缓存了一系列子查询的所有部分匹配,这消耗了大量的时间和空间来维护。TurboFlux算法和Symbi算法维护以数据为中心,同时针对查询的中间结果来减少搜索空间。Rapidflow算法为加速从CSM转化而来的批量子图匹配建立了一个与查询相关的全局索引。这些工作不能有效地更新他们的数据结构/索引,更重要的是,它们维护的数据是特定于查询的,相应的空间成本至少是线性于查询大小和图大小的乘积。

技术实现思路

[0006]本申请提供一种子图模式监控方法、装置、设备及存储介质,通过更新表激活查询图索引可以快速在数据图所对应的查询图集合中找到与待更新的边相关的查询图即对应边,进而进行搜索展开,同时在进行搜索展开时,对查找到点的虚拟扩展的状态不扩大搜索范围,只对实际扩展的状态才进行搜索范围的扩大,进而减少了搜索空间。
[0007]本申请第一方面提供了一种子图模式监控方法,包括:
[0008]确定目标边所对应的目标三元组,所述目标边为数据图中待更新的边;
[0009]通过所述数据图所对应的更新表激活查询图索引对所述数据图所对应的查询图集合进行遍历,以得到与所述目标三元组所对应的查询图子集;
[0010]判断第一顶点是否第一目标顶点所对应的标签覆盖,所述第一顶点为第一查询图中与所述目标三元组对应第一边的顶点,所述第一查询图为所述查询图子集中的任意一个查询图,所述第一目标顶点为所述目标三元组的顶点;
[0011]若所述第一顶点被所述目标顶点所对应的标签覆盖,则判断所述第一查询图所对应的目标映射表中顶点数量是否与所述第一查询图中的顶点数量相匹配;
[0012]若所述目标映射表中顶点数量与所述第一查询图中的顶点数量相匹配,且第二顶点的正常扩展点依赖集不为空,所述第二顶点的虚拟扩展点依赖集为空,则将所述第二顶点所对应的标签与所述数据图中第二目标顶点的邻居顶点的标签进行匹配,以得到与所述第二顶点相匹配的第一候选集,所述第二顶点为所述第一查询图所对应的查询匹配顺序中匹配顺序晚于所述第一边的两个顶点的顶点,所述第二目标顶点为所述目标三元组位次晚于所述第一目标顶点的顶点;
[0013]将第三顶点所对应的标签与所述数据图中与第三目标顶点的邻居顶点的标签进行匹配,以得到所述第三顶点所匹配的第二候选集,所述第三目标顶点为所述第一候选集中的任意一个顶点,所述第三顶点为所述查询匹配顺序中匹配顺序晚于所述第二顶点的顶点;
[0014]根据所述第一候选集以及所述第二候选集生成所述目标边所对应的查询结果。
[0015]本申请第二方面提供了一种子图模式监控装置,包括:
[0016]第一确定单元,用于确定目标边所对应的目标三元组,所述目标边为数据图中待更新的边;
[0017]遍历单元,用于通过所述数据图所对应的更新表激活查询图索引对所述数据图所对应的查询图集合进行遍历,以得到与所述目标三元组所对应的查询图子集;
[0018]第一判断单元,用于判断第一顶点是否第一目标顶点所对应的标签覆盖,所述第一顶点为第一查询图中与所述目标三元组对应第一边的顶点,所述第一查询图为所述查询图子集中的任意一个查询图,所述第一目标顶点为所述目标三元组的顶点;
[0019]第二判断单元,用于若所述第一顶点被所述目标顶点所对应的标签覆盖,则判断所述第一查询图所对应的目标映射表中顶点数量是否与所述第一查询图中的顶点数量相匹配;
[0020]第一匹配单元,用于若所述目标映射表中顶点数量与所述第一查询图中的顶点数量相匹配,且第二顶点的正常扩展点依赖集不为空,所述第二顶点的虚拟扩展点依赖集为空,则将所述第二顶点所对应的标签与所述数据图中第二目标顶点的邻居顶点的标签进行匹配,以得到与所述第二顶点相匹配的第一候选集,所述第二顶点为所述第一查询图所对应的查询匹配顺序中匹配顺序晚于所述第一边的两个顶点的顶点,所述第二目标顶点为所述目标三元组位次晚于所述第一目标顶点的顶点;
[0021]第二匹配单元,用于将第三顶点所对应的标签与所述数据图中与第三目标顶点的邻居顶点的标签进行匹配,以得到所述第三顶点所匹配的第二候选集,所述第三目标顶点为所述第一候选集中的任意一个顶点,所述第三顶点为所述查询匹配顺序中匹配顺序晚于所述第二顶点的顶点;
[0022]生成单元,用于根据所述第一候选集以及所述第二候选集生成所述目标边所对应的查询结果。
[0023]本申请实施例第三方面提供了一种计算机设备,其包括至少一个连接的处理器、存储器和收发器,其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码来执行上述第一方面所述的子图模式监控方法的步骤。
[0024]本申请实施例第四方面提供了一种计算机存储介质,其包括指令,当其在计算机上运行时,使得计算机执行上述任一方面所述的子图模式监控方法的步骤。
[0025]相对于相关技术,本申请提供的实施例中,通过更新表激活查询图索引可以快速在数据图所对应的查询图集合中找到与待更新的边相关的查询图即对应边,进而进行搜索展开,同时在进行搜索展开时,对查找到点的虚拟扩展的状态不扩大搜索范围,只对实际扩展的状态才进行搜索范围的扩大,进而减少了搜索空间。
【附图说明】
[0026]图1为本申请实施例提供的子图匹配的示意图;
[0027]图2为本申请实施例提供的数据图中点2的标签分布情况示意图;
[0028]图3为本申请实施例提供的数据图G中点2对查询图q的标签分布覆盖示意图;
[0029]图4为本申请实施例提供的子图模式监控方法的流程示意图;
[0030]图5为本申请实施例提供的查询图q的一个示意图;
[0031]图6A为本申请实施例提供的查询图Q的一个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种子图模式监控方法,其特征在于,包括:确定目标边所对应的目标三元组,所述目标边为数据图中待更新的边;通过所述数据图所对应的更新表激活查询图索引对所述数据图所对应的查询图集合进行遍历,以得到与所述目标三元组所对应的查询图子集;判断第一顶点是否第一目标顶点所对应的标签覆盖,所述第一顶点为第一查询图中与所述目标三元组对应第一边的顶点,所述第一查询图为所述查询图子集中的任意一个查询图,所述第一目标顶点为所述目标三元组的顶点;若所述第一顶点被所述第一目标顶点所对应的标签覆盖,则判断所述第一查询图所对应的目标映射表中的顶点数量是否与所述第一查询图中的顶点数量相匹配;若所述目标映射表中顶点数量与所述第一查询图中的顶点数量不匹配,且第二顶点的正常扩展点依赖集不为空,所述第二顶点的虚拟扩展点依赖集为空,则将所述第二顶点所对应的标签与所述数据图中第二目标顶点的邻居顶点的标签进行匹配,以得到与所述第二顶点相匹配的第一候选集,所述第二顶点为所述第一查询图所对应的查询匹配顺序中匹配顺序晚于所述第一边的两个顶点的顶点,所述第二目标顶点为所述目标三元组中位次晚于所述第一目标顶点的顶点;将第三顶点所对应的标签与所述数据图中与第三目标顶点的邻居顶点的标签进行匹配,以得到所述第三顶点所匹配的第二候选集,所述第三目标顶点为所述第一候选集中的任意一个顶点,所述第三顶点为所述查询匹配顺序中匹配顺序晚于所述第二顶点的顶点;根据所述第一候选集以及所述第二候选集生成所述目标边所对应的查询结果。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:确定所述数据图中每个顶点所对应的标签分布以及所述查询图集合中每个查询图的每个顶点所对应的标签分布;建立第二查询图中的第二边所对应的查询匹配顺序,所述第二查询图为所述查询图集合中的任意一个查询图,所述第二边为所述第二查询图中的任意一条边;确定所述查询匹配顺序中每个顶点所对应的查询点依赖集;根据所述查询匹配顺序中每个顶点为所对应的查询点依赖集确定所述查询匹配顺序的各个顶点所对应的属性;根据所述查询匹配顺序的每个顶点分配对应的属性确定所述查询匹配顺序的各个顶点所对应的虚拟扩展索引,以得到所述第二查询图所对应的查询点扩展属性扩展列表;建立所述查询图集合中所有查询边所对应的更新表激活查询图索引。3.根据权利要求2所述的方法,其特征在于,所述建立第二查询图中的第二边所对应的查询匹配顺序包括:选取所述第二查询图中与所述第二边的顶点相连最多的顶点集合;若所述顶点集合中存在与所述第二边的顶点相连数相等的第一顶点子集,则选取所述第一顶点子集中度数最大的第四顶点;若所述第一顶点子集中存在度数相同的至少两个顶点,则选取所述至少两个顶点中编号小的第五顶点;根据所述第二边的顶点、第二顶点子集、第三顶点子集、所述第四顶点以及所述第五顶点确定所述第二边所对应的查询匹配顺序,其中,所述第二顶点子集为所述顶点集合中除
所述第一顶点子集之外的顶点的集合,所述第三顶点子集为所述第一顶点子集中除所述至少两个顶点之外的顶点的集合。4.根据权利要求2所述的方法,其特征在于,所述确定所述查询匹配顺序所对应的查询点依赖集包括:确定所述查询匹配顺序中每个顶点的位次;确定所述查询匹配顺序中位次大于第六顶点的第四顶点子集,所述第六顶点为所述查询匹配顺序中的任意一个顶点;确定所述第四顶点子集中与所述第六顶点存在连接边的第五顶点子集;将所述第五顶点子集确定为所述第六顶点所对应的查询点依赖集。5.根据权利要求2所述的方法,其特征在于,所述根据所述查询匹配顺序中每个顶点为所对应的查询点依赖集确定所述查询匹配顺序的各个顶点所对应的属性包括:确定所述查询匹配顺序中每个顶点的位次;若所述查询匹配顺序中存在位次与第七顶点的位次之间的差值为第一预设值的第八顶点,且所述第八顶点包含于所述第七顶点所对应的查询点依赖集,则将所述第七顶点的属性标记为正常扩展点,所述第七顶点为所述查询匹配顺序中的任意一个顶点;若所述查询匹配顺序中存在位次与所述第七顶点的位次之间的差值不为所述第一预设值的第八顶点...

【专利技术属性】
技术研发人员:李友焕李梓铭郑航宇秦拯
申请(专利权)人:湖南大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1