System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种通过计算引擎进行子图匹配的方法和装置制造方法及图纸_技高网

一种通过计算引擎进行子图匹配的方法和装置制造方法及图纸

技术编号:40426109 阅读:5 留言:0更新日期:2024-02-20 22:46
本说明书实施例提供了一种通过计算引擎进行子图匹配的方法和装置,该方法包括:依据批量同步并行BSP计算模式,将子图匹配任务分解为依次的多个超步,生成多个超步对应的配置信息;从与预设的多个计算引擎分别对应的多个执行代码模块中确定出与目标计算引擎对应的目标执行模块;将目标执行模块和配置信息发送到目标计算引擎,用于目标计算引擎根据配置信息,执行目标执行模块,得到子图匹配任务对应的子图匹配结果。

【技术实现步骤摘要】

本说明书一个或多个实施例涉及图计算,尤其涉及一种通过计算引擎进行子图匹配的方法和装置


技术介绍

1、知识图谱(knowledge graph)以结构化语言网络的形式描述客观世界中实体及其之间的关系,提供了一种组织、管理客观世界海量信息的方式。目前,知识图谱在自然语言处理、机器学习、数据挖掘、推荐系统等很多领域中有着广泛的应用。子图匹配(subgraphmatching)任务是知识图谱应用中常见的任务,其主要目的是在大图里面找到与一个给定小图同构的子图,意在发掘知识图谱中重要的子图。在实际生产场景中,不同的知识图谱应用厂商常常希望利用其已经部署的不同的计算引擎的计算能力执行针对知识图谱的子图匹配任务,但是现有的通过计算引擎执行子图匹配的方案往往不能通过不同的通用计算引擎执行子图匹配任务。


技术实现思路

1、本说明书一个或多个实施例描述了一种子图匹配方法和装置,使得可以通过多种不同的计算引擎执行子图匹配任务。

2、根据第一方面,提供了一种通过计算引擎进行子图匹配的方法,包括:

3、依据批量同步并行bsp计算模式,将子图匹配任务分解为依次的多个超步,生成所述多个超步对应的配置信息;从与预设的多个计算引擎分别对应的多个执行代码模块中确定出与目标计算引擎对应的目标执行模块;

4、将所述目标执行模块和所述配置信息发送到目标计算引擎,用于所述目标计算引擎根据所述配置信息,执行所述目标执行模块,得到所述子图匹配任务对应的子图匹配结果。

5、在一种可能的实施方式中,所述多个目标执行代码基于的编程语言包括python语言、scala语言、java语言和r语言中的一种。

6、在一种可能的实施方式中,所述配置信息包括所述多个超步包括的各个超步、以及各个超步包括的子操作。

7、在一种可能的实施方式中,根据所述配置信息,执行所述目标执行代码,包括:依次执行所述多个超步,其中,执行所述多个超步中包括的第一超步包括,执行所述第一超步包括的子操作。

8、在一种可能的实施方式中,执行所述第一超步包括的子操作,包括:

9、根据第一超步包括的子操作,调用目标计算引擎上所述子操作对应的应用接口。

10、在一种可能的实施方式中,所述第一超步包括的子操作为匹配match子操作和连接join子操作,所述match子操作用于匹配出符合预定条件的图对象,所述join子操作用于将match子操作的匹配结果与第一超步的初始子图相连接,所述目标计算引擎上所述子操作对应的应用接口为映射扁平化flatmap接口。

11、在一种可能的实施方式中,所述目标计算引擎包括多个计算节点,所述多个计算节点中包括第一节点;

12、所述目标计算引擎根据所述配置信息,执行所述目标执行代码,包括:

13、所述第一节点执行各个超步中对应于第一节点的部分;

14、所述方法还包括:

15、在所述第一节点执行各个超步中对应于第一节点的部分之前,将各个超步中第一节点关联的图数据保存到第一节点本地。

16、在一种可能的实施方式中,所述超步包括的子操作包括进行图特征计算。

17、在一种可能的实施方式中,所述图特征计算包括基于网页级别pagerank算法,确定图节点的重要性特征。

18、在一种可能的实施方式中,所述子图匹配任务用于针对知识图谱进行子图匹配。

19、根据第二方面,提供了一种子图匹配装置,所述装置包括:

20、配置单元,配置为,依据批量同步并行bsp计算模式,将子图匹配任务分解为依次的多个超步,生成所述多个超步对应的配置信息;从与预设的多个计算引擎分别对应的多个执行代码模块中确定出与目标计算引擎对应的目标执行模块;

21、执行单元,配置为,将所述目标执行模块和所述配置信息发送到目标计算引擎,用于所述目标计算引擎根据所述配置信息,执行所述目标执行模块,得到所述子图匹配任务对应的子图匹配结果。

22、根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面所述的方法。

23、根据第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面所述的方法。利用以上各个方面中的方法、装置、计算设备、存储介质中的一个或多个,使得可以通过多种不同的计算引擎执行子图匹配任务。

本文档来自技高网...

【技术保护点】

1.一种通过计算引擎进行子图匹配的方法,包括:

2.根据权利要求1所述的方法,其中,所述多个执行代码模块基于的编程语言包括Python语言、Scala语言、Java语言和R语言中的一种。

3.根据权利要求1所述的方法,其中,所述配置信息包括所述多个超步包括的各个超步、以及各个超步包括的子操作。

4.根据权利要求3所述的方法,其中,根据所述配置信息,执行所述目标执行模块,包括:

5.根据权利要求4所述的方法,其中,执行所述第一超步包括的子操作,包括:

6.根据权利要求5所述的方法,其中,所述第一超步包括的子操作为匹配Match子操作和连接Join子操作,所述Match子操作用于匹配出符合预定条件的图对象,所述Joi n子操作用于将Match子操作的匹配结果与第一超步的初始子图相连接,所述目标计算引擎上所述子操作对应的应用接口为映射扁平化FlatMap接口。

7.根据权利要求1所述的方法,其中,所述目标计算引擎包括多个计算节点,所述多个计算节点中包括第一节点;

8.根据权利要求3所述的方法,其中,所述超步包括的子操作包括进行图特征计算。

9.根据权利要求8所述的方法,其中,所述图特征计算包括基于网页级别PageRank算法,确定图节点的重要性特征。

10.根据权利要求1所述的方法,其中,所述子图匹配任务用于针对知识图谱进行子图匹配。

11.一种通过计算引擎进行子图匹配的装置,所述装置包括:

12.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-10中任一项的所述的方法。

13.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-10中任一项所述的方法。

...

【技术特征摘要】

1.一种通过计算引擎进行子图匹配的方法,包括:

2.根据权利要求1所述的方法,其中,所述多个执行代码模块基于的编程语言包括python语言、scala语言、java语言和r语言中的一种。

3.根据权利要求1所述的方法,其中,所述配置信息包括所述多个超步包括的各个超步、以及各个超步包括的子操作。

4.根据权利要求3所述的方法,其中,根据所述配置信息,执行所述目标执行模块,包括:

5.根据权利要求4所述的方法,其中,执行所述第一超步包括的子操作,包括:

6.根据权利要求5所述的方法,其中,所述第一超步包括的子操作为匹配match子操作和连接join子操作,所述match子操作用于匹配出符合预定条件的图对象,所述joi n子操作用于将match子操作的匹配结果与第一超步的初始子图相连接,所述目标计算引擎上所述子操作对应的应用接口为映射扁平化flatma...

【专利技术属性】
技术研发人员:游东海
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

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

1