CN114415975A - 针对知识图谱进行划分分区的方法及装置 - Google Patents

针对知识图谱进行划分分区的方法及装置 Download PDF

Info

Publication number
CN114415975A
CN114415975A CN202210312767.2A CN202210312767A CN114415975A CN 114415975 A CN114415975 A CN 114415975A CN 202210312767 A CN202210312767 A CN 202210312767A CN 114415975 A CN114415975 A CN 114415975A
Authority
CN
China
Prior art keywords
data block
partition
node
target
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210312767.2A
Other languages
English (en)
Other versions
CN114415975B (zh
Inventor
张达
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202210312767.2A priority Critical patent/CN114415975B/zh
Publication of CN114415975A publication Critical patent/CN114415975A/zh
Application granted granted Critical
Publication of CN114415975B publication Critical patent/CN114415975B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Abstract

本说明书实施例提供一种针对知识图谱进行划分分区的方法及装置,在划分分区的方法中,获取对应于不同关系类型的多个数据块组,并将其排布为数据块阵列,该数据块阵列沿第一方向的一个第一数据单元对应于一个数据块组。对数据块阵列中与第一方向垂直的第二方向的各个第二数据单元,依次进行对应于各分区的标记处理,以确定对应于各分区的分区结果。其中,确定对应于任意的第一分区的分区结果包括,选取目标数据块,对该目标数据块及其关联数据块进行第一标记处理,并跳转至下一个第二数据单元,直至经过第一标记处理的各数据块的累计数目大于等于第一分区的预分配块数。至少基于经过第一标记处理的各数据块,确定对应于第一分区的分区结果。

Description

针对知识图谱进行划分分区的方法及装置
技术领域
本说明书一个或多个实施例涉及计算机信息处理技术领域,尤其涉及一种针对知识图谱进行划分分区的方法及装置。
背景技术
知识图谱是对现实世界中实体之间的关系的描述,目标广泛地应用于各种计算机信息处理中。一般地,知识图谱包括节点集合和边集合,节点代表现实世界中的实体,边代表现实世界中实体之间的关联关系。例如,在社交网络中,人就是实体,人和人之间的关联关系就是边。
在很多情况下,希望对知识图谱中的节点、边等的拓扑特性进行分析,从中提取出有效信息,实现这类过程的计算方法称为图计算。需要说明,在知识图谱的规模比较庞大(比如万亿级别)时,通常会通过分布式图计算的方法来提取信息。然而分布式图计算的前提是需要针对知识图谱进行划分分区,以便于一个分布式计算任务(也称分布式实例)可以只针对一个分区(partition)的数据进行处理。因此,对知识图谱进行准确分区,以均衡各分布式计算任务之间的处理量就成为要解决的问题。
发明内容
本说明书一个或多个实施例描述了一种针对知识图谱进行划分分区的方法及装置,可以确保划分到各个分区的数据量达到均衡。
第一方面,提供了一种针对知识图谱进行划分分区的方法,包括:
获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息;
将所述多个数据块组排布为数据块阵列,所述数据块阵列沿第一方向的一个第一数据单元对应于一个数据块组;
对所述数据块阵列中与第一方向垂直的第二方向的各个第二数据单元,依次进行对应于各分区的标记处理,以确定对应于所述各分区的分区结果;
其中,确定对应于任意的第一分区的分区结果包括,从当前的第二数据单元中选取目标数据块,对该目标数据块以及该目标数据块的、未经过对应于所述第一分区的第一标记处理的关联数据块进行第一标记处理,并跳转至下一个第二数据单元,直至经过第一标记处理的各数据块的累计数目大于等于所述第一分区的预分配块数;至少基于经过第一标记处理的各数据块,确定对应于所述第一分区的分区结果。
第二方面,提供了一种针对知识图谱进行划分分区的方法,包括:
获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息;
根据各分区的预分配节点数,从所述各数据块组中,确定出对应于各分区的分界数据块;
根据对应于各分区的分界数据块,确定对应于各分区的分区结果。
第三方面,提供了一种针对知识图谱进行划分分区的装置,包括:
获取模块,用于获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息;
排布模块,用于将所述多个数据块组排布为数据块阵列,所述数据块阵列沿第一方向的一个第一数据单元对应于一个数据块组;
标记模块,用于对所述数据块阵列中与第一方向垂直的第二方向的各个第二数据单元,依次进行对应于各分区的标记处理,以确定对应于所述各分区的分区结果;
所述标记模块具体用于:从当前的第二数据单元中选取目标数据块,对该目标数据块以及该目标数据块的、未经过对应于第一分区的第一标记处理的关联数据块进行第一标记处理,并跳转至下一个第二数据单元,直至经过第一标记处理的各数据块的累计数目大于等于所述第一分区的预分配块数;至少基于经过第一标记处理的各数据块,确定对应于所述第一分区的分区结果。
第四方面,提供了一种针对知识图谱进行划分分区的装置,包括:
获取模块,用于获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息;
确定模块,用于根据各分区的预分配节点数,从所述各数据块组中,确定出对应于各分区的分界数据块;
所述确定模块,还用于根据对应于各分区的分界数据块,确定对应于各分区的分区结果。
第五方面,提供了一种计算机存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面或第二方面的方法。
第六方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面或第二方面的方法。
本说明书一个或多个实施例提供的针对知识图谱进行划分分区的方法及装置,首先将对应于不同关系类型的多个数据块组排布为数据块阵列,之后通过对数据块阵列中的各个第二数据单元依次进行标记处理,并统计标记数据块的累计数目的方法,来确定对应于各分区的分区结果,由此可以确保划分到各个分区的数据量达到均衡,进而可以提升分布式图计算的性能。
附图说明
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出知识图谱的底层存储结构示意图;
图2为本说明书披露的一个实施例的实施场景示意图;
图3示出根据一个实施例的针对知识图谱进行划分分区的方法流程图;
图4a示出在一个实施例中数据块阵列示意图;
图4b示出在另一实施例中数据块阵列示意图;
图5a示出确定分区0的分区结果的过程示意图;
图5b示出确定分区1的分区结果的过程示意图;
图5c示出确定分区2的分区结果的过程示意图;
图6示出根据另一个实施例的针对知识图谱进行划分分区的方法流程图;
图7示出在另一个实施例中确定各分区的分区结果的过程示意图;
图8示出根据一个实施例的针对知识图谱进行划分分区的装置示意图;
图9示出根据另一个实施例的针对知识图谱进行划分分区的装置示意图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
如前所述,分布式图计算的前提是需要针对知识图谱进行划分分区。传统的划分分区方法,通常会先批量加载实体和关系数据,然后再采用预定义的分区规则,基于实体ID的hash和关系ID的hash进行划分分区。然而,由于该方法对数据进行了洗牌(shuffle),也就是说划分过程没有考虑实体之间的关联关系,由此会造成分区不准确的问题。此外,在知识图谱的规模比较庞大时,数据的传输会带来较大的IO开销。
为此,本申请的发明人提出,基于知识图谱的底层存储结构,来进行划分分区的构思。具体地,将数据块(KGBlock)作为分区单位,按实体关系总量负载均衡和按实体数量负载均衡两种方法进行划分分区。这里的数据块存储有代表实体的节点(Vertex)以及节点的连接边(Edge)。
图1示出知识图谱的底层存储结构示意图。图1中,实线框代表普通数据块(NormalBlock),虚线框代表热点数据块(Hotspot Block),普通数据块与热点数据块交替存储。这里的普通数据块中存储的节点可以称为普通节点,热点数据块中存储的节点可以称为热点节点。通常情况下,与一个热点节点对应的热点数据块通常为多个,换句话说,多个热点数据块均用于存储一个热点节点的连接边,且不同的热点数据块所存储的连接边不同。
上述按实体关系总量负载均衡的划分分区方法(以下也称IO均衡分区法)的核心思想是保证划分到每个分区的数据块(包括上述普通数据块和热点数据块)的数目尽可能均衡。IO均衡分区法具体是通过对数据块阵列中的各个第二数据单元(比如,各列)依次进行标记处理,并统计标记数据块的累计数目的方法来实现的。
需要说明,在IO均衡分区法中,通常会将对应于同一热点节点的多个热点数据块作为一个虚拟的链式块(ChainedBlock)和普通数据块一并参与分区计算,以保证热点节点的一跳邻居的完整性,后续进行详细说明。
此外,上述按实体数量负载均衡的划分分区方法(以下也称节点均衡分区法)的核心思想是保证划分到每个分区的节点的数目尽可能均衡。节点均衡分区法具体是通过从左到右累计节点的数目来实现的。该方法通常不对热点节点和普通节点进行区分。
总之,通过本说明书实施例提供的方案,可以确保划分到各个分区的数据量(比如,数据块数或者节点数)达到均衡,进而可以提升分布式图计算的性能。
图2为本说明书披露的一个实施例的实施场景示意图。图2中的知识图谱至少包括代表目标实体类型的多个目标节点。此外,还可以包括代表其它实体类型的其它节点。上述目标节点与其它节点之间存在代表关联关系的连接边。
需要说明,上述目标节点及其连接边通常是以数据块(即存储有节点及其连接边)的方式进行存储的,且各数据块可以划分为若干分组,其中的每个分组对应于一种关系类型。这里的关系类型是指目标节点的连接边所代表关联关系的类型。
为了实现分布式图计算,可以采用IO均衡分区法或者节点均衡分区法,对归属于各分组的各数据块进行划分分区,从而分布式实例可以只针对一个分区的数据块进行处理。
应理解,在实际应用中,可以针对知识图谱中的每种实体类型的节点均进行划分分区,具体的划分方法相类似,因此本说明书以针对上述目标节点进行划分分区为例进行说明。
以下先对IO均衡分区法进行说明。
图3示出根据一个实施例的针对知识图谱进行划分分区的方法流程图。该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。如图3所示,该方法至少可以包括如下步骤。
步骤302,获取对应于不同关系类型的多个数据块组。
其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息。其中,i为正整数,且1≤i≤m,这里的m为目标节点的关系类型的数目。
在一个例子中,上述目标节点所代表实体的实体类型可以包括但不限于以下任一种:店铺、用户、地区(或位置)以及商品等等。以店铺为例来说,目标节点的连接边所对应的关系类型可以包括:店铺与用户之间的交易关系、店铺与地区之间的归属关系以及店铺与商品之间的售卖关系等等。
上述节点信息至少包括节点标识(VertexID),此外还可以包括节点名称、节点类型等其它节点属性。上述边信息至少包括边标识,此外还可以包括边权重等其它边属性。
需要说明,各数据块组中的数据块的大小可以是相同的,比如均为1MB。此外,由于目标节点的对应于各关系类型的连接边的数目不同,从而各数据块组中的数据块的数目可以不同。
步骤304,将多个数据块组排布为数据块阵列,该数据块阵列沿第一方向的一个第一数据单元对应于一个数据块组。
这里的第一方向可以为横向也可以为纵向。以横向为例来说,上述一个第一数据单元可以是指一行。再以纵向为例来说,上述一个第一数据单元可以是指一列。
以上述数据块组的数目为3个,且该3个数据块组中的数据块数目分别为6个、4个和3个为例来说,排布得到的数据块阵列可以如图4a所示。图4a中,1个方框代表1个数据块,且1行对应于1个数据块组,从上到下的3行所代表的3个数据块组分别为:RGA[],RGB[]和RGC[]。此外,每个数据块具有对应的块标识。比如,位于第1行第1列的数据块的块标识为:RGA[0]。再比如,位于第3行第2列的数据块的块标识为:RGC[1]。
需要说明,图4a中,各数据块组存储的总节点数是相同的。比如,各数据块组均存储有代表n个店铺的n个目标节点。而由于目标节点对应于每种类型的连接边数目不同,从而各数据块组中的数据块的数目不同。此外,还需要说明,每个方框的宽度仅指示该数据块中节点的数目,或者说指示节点标识的跨度,并非指示数据块的大小。
在一个例子中,假设n个目标节点的节点标识的跨度为0~3100,且每个数据块中存储的各节点标识按升序排列,那么图4a中3个数据块组中每个数据块中存储的首尾节点标识可以如图4b所示。图4b中,每个方框左上角的数字代表对应数据块中的首节点标识(也称起始节点标识,startVertexID),右上角的数字代表对应数据块中的尾节点标识(也称终止节点标识, endVertexID)。
应理解,图4b只是一种示例性说明,在实际中,也存在两个相邻数据块中,在先数据块中存储的尾节点标识与在后数据块中存储的首节点标识相同的情况,以及同一数据块中存储的首尾节点标识相同的情况,本说明书对此不作限定。
需要说明,上述两种情况下的数据块即为上文所述的热点数据块。
步骤306,对数据块阵列中与第一方向垂直的第二方向的各个第二数据单元,依次进行对应于各分区的标记处理,以确定对应于各分区的分区结果。
以第一方向为横向为例来说,这里的第二方向可以为纵向,各个第二数据单元可以为各列。再以第一方向为纵向为例来说,这里的第二方向可以为横向,各个第二数据单元可以为各行。
以各分区中任意的第一分区为例来说,确定对应于第一分区的分区结果可以包括,从当前的第二数据单元中选取目标数据块,对该目标数据块以及该目标数据块的、未经过对应于第一分区的第一标记处理的关联数据块进行第一标记处理,并跳转至下一个第二数据单元,直至经过第一标记处理的各数据块的累计数目大于等于第一分区的预分配块数。至少基于经过第一标记处理的各数据块,确定对应于第一分区的分区结果。
在一个示例中,数据块中存储的节点信息包括节点标识,多个数据块组中的同一数据块组中,在先的数据块中的各节点标识均小于在后的数据块中的各节点标识,上述选取目标数据块具体可以包括,从当前的第二数据单元中,选取其中存储的最大节点标识最小的数据块作为待选数据块。判断该待选数据块是否已经过第一标记处理,若否,则将其确定为目标数据块。若是,则结束本次目标数据块的选取,并跳转至下一个第二数据单元,直至选取到目标数据块为止。
需要说明,同一数据块中存储的各节点标识可以升序排列,也可以乱序排列。应理解,在数据块中存储的各节点标识升序排列时,上述最大节点标识最小的数据块也即为其中存储的终止节点标识最小的数据块。
上述关联数据块包括直接关联数据块和间接关联数据块,直接关联数据块是指与目标数据块具有重合节点的数据块。间接关联数据块是指与直接关联数据块具有重合节点的数据块。通常而言,在直接关联数据块中存储有热点节点时,该直接关联数据块存在对应的间接关联数据块。
此外,上述对应于第一分区的预分配块数可以是根据第一分区的分区标识、数据块的总数目以及预设的分区数确定的。
在一个示例中,可以根据如下公式1确定对应于各分区的预分配块数。
Figure 462994DEST_PATH_IMAGE002
其中,partitionidx为第i分区的分区标识,blockTotal为数据块的总数目,partitionCount为预设的分区数,partitionBlocks为第i分区的预分配块数。
应理解,上述公式1只是一种示例性说明,在实际应用中,还可以结合各分区的优先级等,来确定对应于各分区的预分配块数,本说明书对此不作限定。
最后,上述对应于第一分区的分区结果可以包括,第一分区的左边界和右边界,以及经过第一标记处理的各数据块的块标识。此外,还可以包括分割点等。
其中,第一分区的左边界为在进行上述第一标记处理的过程中首次选取的目标数据块中存储的最小节点标识,第一分区的右边界为在进行上述第一标记处理的过程中最后一次选取的目标数据块中存储的最大节点标识。
以下结合图4a和图4b对IO均衡分区法进行说明。
首先,假设预设的分区数为3,且各分区的分区标识分别为:0、1和2。那么根据上述公式1可以计算得到,对应于分区标识为0的分区(以下称分区0)的预分配块数为:((0+1)*13+2)/3-(0*13+2)/3=5-0=5。同理,对应于分区1的预分配块数为4,对应于分区2的预分配块数为4。
需要说明,由于图4a和图4b中的各数据块组是按行排列的,因此以下通过对数据块阵列进行逐列标记处理,确定对应于3个分区的分区结果。
图5a示出确定分区0的分区结果的过程示意图。图5a中,首先将第1列作为当前列,由于第1列第1行的数据块(即数据块RGA[0])中存储的最大节点标识最小,且未经过对应于分区0的第一标记处理(通过竖线示出),从而可以将该数据块作为目标数据块。此外,由于第1列第2行的数据块(即数据块RGB[0])和第1列第3行的数据块(即数据块RGC[0])均与目标数据块具有重合节点,且未经过第一标记处理,从而可以将其选取为目标数据块的直接关联数据块,此外可以判断该目标数据块不存在间接关联数据块。之后可以针对第1列第1-3行的数据块进行第一标记处理,并跳转至下一列(即第2列)。由于此时经过第一标记处理的数据块的累计数目为3<5。从而将第2列作为当前列,继续执行第一标记处理。
应理解,在针对第2列进行第一标记处理之后,经过第一标记处理的数据块的累计数目为6,大于5,从而对应于分区0的第一标记处理结束。之后可以基于经过第一标记处理的数据块,确定对应分区0的分区结果。首先基于经过第一标记处理的各数据块,可以得到对应于分区0的块标识分别为:RGA[0], RGA[1]、RGB[0]、RGB[1]、RGC[0]和RGC[1]。此外,基于在进行第一标记处理过程中首次选取的目标数据块(即第1列第1行的数据块)的最小节点标识,可以得到分区0的左边界:0,以及基于在进行第一标记处理过程中最后一次选取的目标数据块(即第2列第1行的数据块)的最大节点标识,可以得到分区0的右边界:600。
图5b示出确定分区1的分区结果的过程示意图。由于在上述第一标记处理结束之后,已进入第3列,因此将第3列作为当前列进行对应于分区1的第二标记处理(通过横线示出)。具体地,由于第3列第1行的数据块(即数据块RGA[2])中存储的最大节点标识最小,且未经过对应于分区1的第二标记处理,从而可以将该数据块作为目标数据块。此外,由于第2列第2行的数据块(即数据块RGB[1])和第2列第3行的数据块(即数据块RGC[1])均与目标数据块具有重合节点,且未经过第二标记处理,从而可以将其选取为目标数据块的直接关联数据块,此外可以判断该目标数据块不存在间接关联数据块。之后可以针对第3列第1行,第2列第2和3行的数据块进行第二标记处理,并跳转至下一列(即第4列)。由于此时经过第二标记处理的数据块的累计数目为3<4。从而将第4列作为当前列,继续执行第二标记处理。
需要说明,在跳转至第4列之后,所选取的目标数据块为第4列第1行的数据块(即数据块RGA[3]),由于第3列第2行的数据块(即RGB[2])与目标数据块具有重合节点,从而可以将其作为直接关联数据块进行第二标记处理。此外,虽然第2列第3行的数据块(即数据块RGC[1])也与目标数据块具有重合节点,但其已经过第二标记处理,所以不必再针对该数据块进行第二标记处理。应理解,在针对第4列进行第二标记处理之后,经过第二标记处理的数据块的累计数目为5,大于4,从而对应于分区1的第二标记处理结束。之后,可以得到对应于分区1的块标识分别为:RGA[2]、RGA[3]、RGB[1]、RGB[2]、RGC[1]。此外,分区1的左边界为:606,右边界为:1700。
图5c示出确定分区2的分区结果的过程示意图。由于在上述第二标记处理结束之后,已进入第5列,因此将第5列作为当前列进行对应于分区2的第三标记处理(通过斜线示出)。具体的第三标记处理可以参照上述第一和第二标记处理,本说明书在此不复赘述。在第三标记处理结束之后,可以得到对应于分区2的块标识分别为:RGA[4]、RGA[5]、RGB[2]、RGB[3]、RGC[1]和RGC[2]。此外,分区2的左边界为:1710,右边界为:3100。
需要说明,图5a-图5c中同时标出两种以上类型的线条的数据块表示同时进行了两种以上的标记处理。以图5b为例来说,第3行第2列的数据块同时标出竖线和横线,则表示该数据块同时进行了第一和第二标记处理。
结合上述例子可以得出,对应于每个分区的实际标记块数会多于对应的预分配块数,在实际应用中,在对应于某分区的标记处理的各数据块的累计数目大于该分区的预分配块数的情况下,可以将超出的数据块直接进行对应于下一分区的标记处理。
以图5a为例来说,在第一标记处理结束后,经过第一标记处理的数据块的累计数目为6,而分区0的预分配块数为5,从而可以直接对第2列第3行的数据块(即数据块RGC[1])进行第二标记处理。应理解,在将RGC[1]进行第二标记处理之后,经过第二标记处理的数据块的累计数目从1开始计数。
此外,结合上述例子还可以得出,同一数据块可能会经过多次不同的标记处理,也就是说,同一数据块可能会被划分到多个分区。应理解,在将同一数据块划分至多个分区之后,对应于各分区的分布式实例,结合该分区的左右边界,来读取该数据块中的具体内容,由此来实现数据块内容的切分,或者说,结合分区的左右边界来确保分区间数据的互斥。
应理解,以上是对已有目标节点的分区方法的说明,当针对知识图谱新增目标实体类型的目标节点(以下称新增节点)时。可以根据各分区的分区结果中的左边界和右边界,确定新增节点的新增节点标识所落入的目标分区。
在一个具体例子中,可以通过二分查找法,确定新增节点的新增节点标识所落入的目标分区。其中,确定新增节点所落入目标分区复杂度为logn,其中n为目标节点的数目。
最后,需要说明,上述是针对知识图谱中的目标实体类型的目标节点划分分区的方法的说明。类似地,还可以针对其它实体类型的其它节点划分分区,本说明书在此不复赘述。
综上,本说明书实施例提供的针对知识图谱进行划分分区的方法,可以基于知识图谱的底层存储结构,来进行划分分区,由此可以使得单个实例只需要进行本地化的数据加载即可,而不需要进行数据洗牌,由此可以提升分布式图计算的性能。此外,该方法可以确保划分到各个分区的数据块数达到均衡,或者或可以确保分布式实例的IO均衡。最后,该方法支持分布式场景下对全量数据进行分析和计算。
以上是针对IO均衡分区法的描述,以下对节点均衡分区法进行说明。
图6示出根据另一个实施例的针对知识图谱进行划分分区的方法流程图。该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。如图6所示,该方法至少可以包括如下步骤。
步骤602与步骤302相同,在此不复赘述。
步骤604,根据各分区的预分配节点数,从各数据块组中,确定出对应于各分区的各分界数据块。
其中,各分区的预分配节点数是根据目标节点的数目以及预设的分区数确定的。
举例来说,假设目标节点的数目为3000,预设的分区数为3,那么各分区的预分配节点数均为:3000/3=1000。
当然,在实际应用中,也可以结合预定比例,来确定各分区的预分配节点数,本说明书对此不作限定。
在一个示例中,数据块中存储的节点信息包括节点标识,多个数据块组中的同一数据块组中,在先的数据块中的各节点标识均小于在后的数据块中的各节点标识。上述确定出对应于各分区的分界数据块可以包括,步骤a,对于任意的第一分区,确定第一分区的左边界。步骤b,并根据左边界和第一分区的预分配节点数,确定分界点。步骤c,从各数据块组中的数据块中,选取出该分界点落入对应节点标识范围的各候选数据块。将各候选数据块中,其中存储的最大节点标识最小的候选数据块作为对应于第一分区的分界数据块。
首先,在步骤a中,在第一分区为首个分区时,上述确定第一分区的左边界可以包括,将各数据块组中的数据块中存储的最小节点标识作为第一分区的左边界。
在第一分区不是首个分区时,上述确定第一分区的左边界可以包括,将第一分区的前一分区的右边界的下一节点标识作为第一分区的左边界。
这里的下一节点标识可以为在进行对应于第一分区的标记处理过程中,最后一次选取的目标数据块的下一数据块中存储的最小节点标识。
接着,在步骤b中,可以将左边界和第一分区的预分配节点数之和,作为分界点。
当然,在实际应用中,也可以对上述求和结果进行预处理(比如,四舍五入),之后将预处理后的结果作为分界点。
最后,在步骤c中,各候选数据块中任一候选数据块的节点标识范围由该候选数据块中存储的最小节点标识和最大节点标识形成。
需要说明,上述各数据块组中同一数据块中存储的各节点标识可以升序排列,也可以乱序排列。应理解,在数据块中存储的各节点标识升序排列时,每个数据块中存储的起始节点标识为最小节点标识,终止节点标识为最大节点标识。
步骤606,根据对应于各分区的分界数据块,确定对应于各分区的分区结果。
具体地,可以将分界数据块中存储的最大节点标识作为第一分区的右边界。从各数据块组中的数据块中,选取其中存储的至少部分节点标识落入第一分区的左边界和右边界之间的各目标数据块。将各目标数据块的块标识、第一分区左边界和右边界作为对应于第一分区的分区结果。
以下结合例子对节点数均衡分区法进行说明。
首先,假设预设的分区数为3,且各分区的分区标识分别为:0、1和2。此外,还假设各分区的预分配节点数分别为1000。
图7示出在另一个实施例中确定各分区的分区结果的过程示意图。图7中,每个数据块中存储的节点标识按升序排列,且各数据块的首尾节点标识如图4b所示。图7中,首先,对于分区0,由于分区0为首个分区,从而可以将各数据块中存储的最小节点标识0作为分区0的左边界。之后,通过对0和1000求和,可以得到分界点1000。由于分界点1000落入了数据块RGA[2]、RGB[1]和RGC[1]各自对应的节点标识范围,从而可以将该3个数据块作为3个候选数据块。该3个候选数据块各自存储的最大节点标识分别为:1100、1400和2500,从而可以将数据块RGA[2]作为分区0的分界数据块。
由于数据块RGA[2]中存储的最大节点标识为1100,从而分区0的右边界为1100。至此就得到了分区0的左边界0和右边界1100。由于数据块RGA[0]、RGA[1] 、RGA[2]、RGB[0]和RGC[0]中的全部节点标识落入了0~100之间,以及数据块RGB[1]和RGC[1]中的部分节点标识落入了0~100之间,所以对应于分区0的块标识分别为:RGA[0]、RGA[1]、RGA[2]、RGB[0] 、RGB[1]、RGC[0]和RGC[1]。图7中,将这些数据块均通过竖线标出。
接着,对于分区1,分区1为非首个分区,从而可以将前一分区的右边界1100的下一节点标识1120作为分区1的左边界。之后,通过对1120和1000求和,可以得到分界点2120。由于分界点2120落入了数据块RGA[4]、RGB[2]和RGC[1]各自对应的节点标识范围,从而可以将该3个数据块作为3个候选数据块。该3个候选数据块各自存储的最大节点标识分别为:2300、2600和2500,从而可以将数据块RGA[4]作为分区1的分界数据块。
由于数据块RGA[4]中存储的最大节点标识为2300,从而分区1的右边界为2300。至此就得到了分区1的左边界1120和右边界2300。由于数据块RGA[3]、RGA[4]中的全部节点标识落入了1120~2300之间,以及数据块RGB[1]、RGB[2]和RGC[1]中的部分节点标识落入了1120~2300之间,所以对应于分区1的块标识分别为:RGA[3]、RGA[4]、RGB[1]、RGB[2]和RGC[1]。图7中,将这些数据块均通过横线标出。
最后,对于分区2,可以参照上述分区0和分区1的分区结果的确定方法,可以得到对应于分区2的块标识分别为:RGA[5]、RGB[2]、RGB[3]、RGC[1]和RGC[2]。图7中,将这些数据块均通过斜线标出。
需要说明,图7中同时标出两种以上类型的线条的数据块表示同时划分到了多个分区。
此外,结合上述例子也可以得出,同一数据块可能会被划分到多个分区。应理解,在将同一数据块划分至多个分区之后,对应于各分区的分布式实例,结合该分区的左右边界,来读取该数据块中的具体内容,由此来实现数据块内容的切分。或者说,结合分区的左右边界来确保分区间数据的互斥。
应理解,以上是对已有目标节点的分区方法的说明,当针对知识图谱新增目标实体类型的目标节点(以下称新增节点)时。可以根据各分区的分区结果中的左边界和右边界,确定新增节点的新增节点标识所落入的目标分区。
在一个具体例子中,可以通过二分查找法,确定新增节点的新增节点标识所落入的目标分区。
最后,需要说明,上述是针对知识图谱中的目标实体类型的目标节点划分分区的方法的说明。类似地,还可以针对其它实体类型的其它节点划分分区,本说明书在此不复赘述。
综上,本说明书实施例提供的针对知识图谱进行划分分区的方法,可以基于知识图谱的底层存储结构,来进行划分分区,由此可以使得单个实例只需要进行本地化的数据加载即可,而不需要进行数据洗牌,由此可以提升分布式图计算的性能。此外,该方法可以确保划分到各个分区的节点数达到均衡。最后,该方法适用于对知识图谱进行边裁剪场景下的分析和计算。
与上述针对知识图谱进行划分分区的方法对应地,本说明书一个实施例还提供的一种针对知识图谱进行划分分区的装置,其中,该知识图谱至少包括代表目标实体类型的多个目标节点。如图8所示,该装置可以包括:
获取模块802,用于获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息。
排布模块804,用于将多个数据块组排布为数据块阵列,该数据块阵列沿第一方向的一个第一数据单元对应于一个数据块组。
标记模块806,用于对数据块阵列中与第一方向垂直的第二方向的各个第二数据单元,依次进行对应于各分区的标记处理,以确定对应于各分区的分区结果。
上述标记模块806具体用于:从当前的第二数据单元中选取目标数据块,对该目标数据块以及该目标数据块的、未经过对应于第一分区的第一标记处理的关联数据块进行第一标记处理,并跳转至下一个第二数据单元,直至经过第一标记处理的各数据块的累计数目大于等于第一分区的预分配块数。至少基于经过第一标记处理的各数据块,确定对应于第一分区的分区结果。
其中,第一分区的预分配块数是根据第一分区的分区标识、数据块的总数目以及预设的分区数确定的。
其中,关联数据块包括直接关联数据块和间接关联数据块,直接关联数据块是指与目标数据块具有重合节点的数据块,间接关联数据块是指与直接关联数据块具有重合节点的数据块。
上述节点信息包括节点标识,多个数据块组中的同一数据块组中,在先的数据块中的各节点标识均小于在后的数据块中的各节点标识;
标记模块806包括:
选取子模块8062,用于从当前的第二数据单元中,选取其中存储的最大节点标识最小的数据块;
判断子模块8064,用于判断所选取的数据块是否已经过第一标记处理,若否,则将其作为目标数据块。
此外,上述对应于第一分区的分区结果包括,第一分区的左边界和右边界,以及经过第一标记处理的各数据块的块标识。其中,左边界为首次选取的目标数据块中存储的最小节点标识,右边界为最后一次选取的目标数据块中存储的最大节点标识。
可选地,该装置还可以包括:确定模块808;
获取模块802,还用于获取新增节点的新增节点标识;
确定模块808,用于根据各分区的分区结果中的左边界和右边界,确定新增节点标识所落入的目标分区。
可选地,标记模块806,还用于在经过第一标记处理的各数据块的累计数目大于第一分区的预分配块数的情况下,将超出的数据块直接进行第二标记处理。该第二标记处理为对应于第一分区的下一分区的标记处理。
本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。
本说明书一个实施例提供的针对知识图谱进行划分分区的装置,可以确保划分到各个分区的数据量达到均衡。
与上述针对知识图谱进行划分分区的方法对应地,本说明书一个实施例还提供的一种针对知识图谱进行划分分区的装置,其中,该知识图谱至少包括代表目标实体类型的多个目标节点。如图9所示,该装置可以包括:
获取模块902,用于获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息。
确定模块904,用于根据各分区的预分配节点数,从各数据块组中,确定出对应于各分区的分界数据块。
其中,各分区的预分配节点数是根据目标节点的数目以及预设的分区数确定的。
其中,上述节点信息包括节点标识,多个数据块组中的同一数据块组中,在先的数据块中的各节点标识均小于在后的数据块中的各节点标识;
确定模块904具体用于:
对于任意的第一分区,确定第一分区的左边界,并根据左边界和第一分区的预分配节点数,确定分界点;
从各数据块组中的数据块中,选取出分界点落入对应节点标识范围的各候选数据块;
将各候选数据块中,其中存储的最大节点标识最小的候选数据块作为对应于第一分区的分界数据块。
其中,第一分区为首个分区,确定模块904具体用于:
将各数据块组中的数据块中存储的最小节点标识作为第一分区的左边界。
其中,第一分区不是首个分区;确定模块904具体用于:
将第一分区的前一分区的右边界的下一节点标识作为第一分区的左边界。
确定模块904,还用于根据对应于各分区的分界数据块,确定对应于各分区的分区结果。
确定模块904还具体用于:
将分界数据块中存储的最大节点标识作为第一分区的右边界;
从各数据块组中的数据块中,选取其中存储的至少部分节点标识落入左边界和右边界之间的各目标数据块;
将各目标数据块的块标识、第一分区的左边界和右边界作为对应于第一分区的分区结果。
本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。
本说明书一个实施例提供的针对知识图谱进行划分分区的装置,可以确保划分到各个分区的数据量达到均衡。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图3或图6所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图3或图6所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
结合本说明书公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于服务器中。当然,处理器和存储介质也可以作为分立组件存在于服务器中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述的具体实施方式,对本说明书的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的具体实施方式而已,并不用于限定本说明书的保护范围,凡在本说明书的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的保护范围之内。

Claims (17)

1.一种针对知识图谱进行划分分区的方法,其中,所述知识图谱至少包括代表目标实体类型的多个目标节点;所述方法包括:
获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息;
将所述多个数据块组排布为数据块阵列,所述数据块阵列沿第一方向的一个第一数据单元对应于一个数据块组;
对所述数据块阵列中与第一方向垂直的第二方向的各个第二数据单元,依次进行对应于各分区的标记处理,以确定对应于所述各分区的分区结果;
其中,确定对应于任意的第一分区的分区结果包括,从当前的第二数据单元中选取目标数据块,对该目标数据块以及该目标数据块的、未经过对应于所述第一分区的第一标记处理的关联数据块进行第一标记处理,并跳转至下一个第二数据单元,直至经过第一标记处理的各数据块的累计数目大于等于所述第一分区的预分配块数;至少基于经过第一标记处理的各数据块,确定对应于所述第一分区的分区结果。
2.根据权利要求1所述的方法,其中,所述关联数据块包括直接关联数据块和间接关联数据块;所述直接关联数据块是指与所述目标数据块具有重合节点的数据块;所述间接关联数据块是指与所述直接关联数据块具有重合节点的数据块。
3.根据权利要求1所述的方法,其中,所述节点信息包括节点标识;所述多个数据块组中的同一数据块组中,在先的数据块中的各节点标识均小于在后的数据块中的各节点标识;
所述从当前的第二数据单元中选取目标数据块,包括:
从当前的第二数据单元中,选取其中存储的最大节点标识最小的数据块;
判断所选取的数据块是否已经过所述第一标记处理,若否,则将其作为所述目标数据块。
4.根据权利要求3所述的方法,其中,所述对应于第一分区的分区结果包括,所述第一分区的左边界和右边界,以及经过第一标记处理的各数据块的块标识;其中,所述左边界为首次选取的目标数据块中存储的最小节点标识,所述右边界为最后一次选取的目标数据块中存储的最大节点标识。
5.根据权利要求4所述的方法,还包括:
获取新增节点的新增节点标识;
根据所述各分区的分区结果中的左边界和右边界,确定所述新增节点标识所落入的目标分区。
6.根据权利要求1所述的方法,其中,所述第一分区的预分配块数是根据所述第一分区的分区标识、数据块的总数目以及预设的分区数确定的。
7.根据权利要求1所述的方法,还包括:
在经过第一标记处理的各数据块的累计数目大于所述第一分区的预分配块数的情况下,将超出的数据块直接进行第二标记处理;所述第二标记处理为对应于第一分区的下一分区的标记处理。
8.一种针对知识图谱进行划分分区的方法,其中,所述知识图谱至少包括代表目标实体类型的多个目标节点;所述方法包括:
获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息;
根据各分区的预分配节点数,从所述各数据块组中,确定出对应于各分区的分界数据块;
根据对应于各分区的分界数据块,确定对应于各分区的分区结果。
9.根据权利要求8所述的方法,其中,所述各分区的预分配节点数是根据所述目标节点的数目以及预设的分区数确定的。
10.根据权利要求8所述的方法,其中,所述节点信息包括节点标识;所述多个数据块组中的同一数据块组中,在先的数据块中的各节点标识均小于在后的数据块中的各节点标识;
所述确定出对应于各分区的分界数据块,包括:
对于任意的第一分区,确定所述第一分区的左边界,并根据所述左边界和所述第一分区的预分配节点数,确定分界点;
从所述各数据块组中的数据块中,选取出所述分界点落入对应节点标识范围的各候选数据块;
将所述各候选数据块中,其中存储的最大节点标识最小的候选数据块作为对应于所述第一分区的分界数据块。
11.根据权利要求10所述的方法,其中,根据对应于各分区的分界数据块,确定对应于各分区的分区结果,包括:
将所述分界数据块中存储的最大节点标识作为所述第一分区的右边界;
从所述各数据块组中的数据块中,选取其中存储的至少部分节点标识落入所述左边界和右边界之间的各目标数据块;
将所述各目标数据块的块标识、所述左边界和右边界作为对应于所述第一分区的分区结果。
12.根据权利要求10所述的方法,其中,所述第一分区为首个分区;
所述确定所述第一分区的左边界,包括:
将所述各数据块组中的数据块中存储的最小节点标识作为所述第一分区的左边界。
13.根据权利要求10所述的方法,其中,所述第一分区不是首个分区;
所述确定所述第一分区的左边界,包括:
将所述第一分区的前一分区的右边界的下一节点标识作为所述第一分区的左边界。
14.一种针对知识图谱进行划分分区的装置,其中,所述知识图谱至少包括代表目标实体类型的多个目标节点;所述装置包括:
获取模块,用于获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息;
排布模块,用于将所述多个数据块组排布为数据块阵列,所述数据块阵列沿第一方向的一个第一数据单元对应于一个数据块组;
标记模块,用于对所述数据块阵列中与第一方向垂直的第二方向的各个第二数据单元,依次进行对应于各分区的标记处理,以确定对应于所述各分区的分区结果;
所述标记模块具体用于:从当前的第二数据单元中选取目标数据块,对该目标数据块以及该目标数据块的、未经过对应于第一分区的第一标记处理的关联数据块进行第一标记处理,并跳转至下一个第二数据单元,直至经过第一标记处理的各数据块的累计数目大于等于所述第一分区的预分配块数;至少基于经过第一标记处理的各数据块,确定对应于所述第一分区的分区结果。
15.一种针对知识图谱进行划分分区的装置,其中,所述知识图谱至少包括代表目标实体类型的多个目标节点;所述装置包括:
获取模块,用于获取对应于不同关系类型的多个数据块组,其中,任意的第i数据块组中的数据块存储有若干目标节点的节点信息,以及各目标节点的对应于第i关系类型的连接边的边信息;
确定模块,用于根据各分区的预分配节点数,从所述各数据块组中,确定出对应于各分区的分界数据块;
所述确定模块,还用于根据对应于各分区的分界数据块,确定对应于各分区的分区结果。
16.一种计算机可读存储介质,其上存储有计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-13中任一项所述的方法。
17.一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-13中任一项所述的方法。
CN202210312767.2A 2022-03-28 2022-03-28 针对知识图谱进行划分分区的方法及装置 Active CN114415975B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210312767.2A CN114415975B (zh) 2022-03-28 2022-03-28 针对知识图谱进行划分分区的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210312767.2A CN114415975B (zh) 2022-03-28 2022-03-28 针对知识图谱进行划分分区的方法及装置

Publications (2)

Publication Number Publication Date
CN114415975A true CN114415975A (zh) 2022-04-29
CN114415975B CN114415975B (zh) 2022-06-21

Family

ID=81262919

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210312767.2A Active CN114415975B (zh) 2022-03-28 2022-03-28 针对知识图谱进行划分分区的方法及装置

Country Status (1)

Country Link
CN (1) CN114415975B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106780640A (zh) * 2016-12-28 2017-05-31 桂林电子科技大学 一种大规模图数据表示方法
US20190155926A1 (en) * 2017-11-20 2019-05-23 International Business Machines Corporation Knowledge graph node expiration
CN110457486A (zh) * 2019-07-05 2019-11-15 中国人民解放军战略支援部队信息工程大学 基于知识图谱的人物实体对齐方法及装置
CN110929752A (zh) * 2019-10-18 2020-03-27 平安科技(深圳)有限公司 基于知识驱动和数据驱动的分群方法及相关设备
US20200167426A1 (en) * 2018-11-27 2020-05-28 International Business Machines Corporation Partitioning knowledge graph
CN113360286A (zh) * 2021-06-21 2021-09-07 中国人民解放军国防科技大学 一种基于知识图谱嵌入的链接预测方法
CN113568987A (zh) * 2021-07-29 2021-10-29 湖南大学 知识图谱嵌入模型的训练方法、装置、计算机设备
CN113761065A (zh) * 2021-08-27 2021-12-07 河南向量智能科技研究院有限公司 一种网状设计节点结构的呼应设计方法
WO2021259002A1 (zh) * 2020-06-23 2021-12-30 平安科技(深圳)有限公司 基于决策树的异常数据源输出方法、装置和计算机设备
CN113961528A (zh) * 2021-10-27 2022-01-21 上海交通大学 基于知识图谱的文件语义关联存储系统及方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106780640A (zh) * 2016-12-28 2017-05-31 桂林电子科技大学 一种大规模图数据表示方法
US20190155926A1 (en) * 2017-11-20 2019-05-23 International Business Machines Corporation Knowledge graph node expiration
US20200167426A1 (en) * 2018-11-27 2020-05-28 International Business Machines Corporation Partitioning knowledge graph
CN110457486A (zh) * 2019-07-05 2019-11-15 中国人民解放军战略支援部队信息工程大学 基于知识图谱的人物实体对齐方法及装置
CN110929752A (zh) * 2019-10-18 2020-03-27 平安科技(深圳)有限公司 基于知识驱动和数据驱动的分群方法及相关设备
WO2021259002A1 (zh) * 2020-06-23 2021-12-30 平安科技(深圳)有限公司 基于决策树的异常数据源输出方法、装置和计算机设备
CN113360286A (zh) * 2021-06-21 2021-09-07 中国人民解放军国防科技大学 一种基于知识图谱嵌入的链接预测方法
CN113568987A (zh) * 2021-07-29 2021-10-29 湖南大学 知识图谱嵌入模型的训练方法、装置、计算机设备
CN113761065A (zh) * 2021-08-27 2021-12-07 河南向量智能科技研究院有限公司 一种网状设计节点结构的呼应设计方法
CN113961528A (zh) * 2021-10-27 2022-01-21 上海交通大学 基于知识图谱的文件语义关联存储系统及方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
KAZUHIRO SASABUCHI; NAOKI WAKE; KATSUSHI IKEUCHI: "Task-Oriented Motion Mapping on Robots of Various Configuration Using Body Role Division", 《IEEE ROBOTICS AND AUTOMATION LETTERS》 *
王鑫,陈蔚雪,杨雅君,张小旺,冯志勇: "知识图谱划分算法研究综述", 《计算机学报》 *
肖李明等: "基于PCA谱聚类分析的无功分区方法研究", 《陕西电力》 *

Also Published As

Publication number Publication date
CN114415975B (zh) 2022-06-21

Similar Documents

Publication Publication Date Title
US20080218518A1 (en) Balancing collections of vertices in a network
US20160314484A1 (en) Method and system for mining churn factor causing user churn for network application
US10747764B1 (en) Index-based replica scale-out
CN112037061A (zh) 区块链中交易的处理方法、装置、电子设备及存储介质
CN111597054A (zh) 一种信息处理方法、系统、电子设备及存储介质
CN110661719A (zh) 流量负载均衡方法和装置
CN114415975B (zh) 针对知识图谱进行划分分区的方法及装置
CN109614515B (zh) 视频搜索评价方法和系统
CN111191778A (zh) 深度学习网络处理方法、装置与编译器
CN110930092B (zh) 一种配送路线调整方法、装置、电子设备和存储介质
CN109245948B (zh) 安全感知的虚拟网络映射方法及其装置
CN108710514B (zh) 对象跳转控制方法和装置、存储介质及电子装置
CN109993338B (zh) 一种链路预测方法及装置
CN111258955B (zh) 一种文件读取方法和系统、存储介质、计算机设备
CN113448876A (zh) 一种业务测试方法、装置、计算机设备及存储介质
CN117370619B (zh) 图的分片存储和子图采样方法及装置
CN113064720B (zh) 对象分配方法、装置、服务器及存储介质
CN114694755B (zh) 基因组组装方法、装置、设备及存储介质
CN116094952B (zh) 网络结构相似度的确定方法、装置、设备以及存储介质
US20230297949A1 (en) Information processing device, information processing method, computer program product, and information processing system
CN107798338B (zh) 一种大数据密集支撑点快速选取方法
CN110221971B (zh) 搜索引擎的测试方法及装置、电子设备、存储介质
JP2560347B2 (ja) 分割値検索処理方法
CN112100446B (zh) 搜索方法、可读存储介质和电子设备
CN110704550B (zh) 一种高效提取大数据量无拓扑矢量多边形公共边方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant