一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种图数据的处理方法、装置以及存储介质与流程

2022-07-16 14:30:08 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种图数据的处理方法、装置以及存储介质。


背景技术:

2.随着互联网技术的迅速发展,人们对社交网络的要求越来越高。社交网络可以通过图数据进行构建,图数据钟的点表示实体,边表示两个实体间的关系,通过对图数据进行处理即可对社交网络进行关联或简化。
3.一般,对图数据进行处理可以采用metis算法,即通过不断地压缩图结构,使得两个节点会合并成一个新的节点。因此,基于新的节点,得到一个规模较小的图。
4.但是,在大规模数据处理的场景中,metis算法可以将所有数据放到内存中,对计算机内存有较高,并且具有较高的计算代价和较长的运行时间,影响图数据处理的效率。


技术实现要素:

5.有鉴于此,本技术提供一种图数据的处理方法,可以有效提高图数据处理的效率。
6.本技术第一方面提供一种图数据的处理方法,可以应用于终端设备中包含图数据的处理功能的系统或程序中,具体包括:
7.获取初始图数据,并将所述初始图数据分割为k个第一分区,每个所述第一分区对应的数据量接近,每个所述第一分区对应不同的执行对象,k≥2,k为正整数;
8.确定所述第一分区对应的分区子图;
9.对每个所述分区子图进行图分割,以得到每个所述分区子图对应的t个子图分割分区,t≥2,t为正整数;
10.将k*t个所述子图分割分区作为图节点,以生成所述初始图数据对应的缩略图;
11.将所述缩略图分割为k个第二分区,并基于所述第二分区对所述初始图数据中的节点进行分区,以得到目标节点集合,所述目标节点集合用于推荐任务的执行,每个所述第二分区对应不同的执行对象。
12.可选的,在本技术一些可能的实现方式中,所述获取初始图数据,并将所述初始图数据分割为k个第一分区,包括:
13.获取所述初始图数据;
14.确定所述初始图数据中的每个节点对应的邻居节点,以生成第一二元组;
15.生成r个随机数,并将所述随机数与所述第一二元组进行组合生成第二二元组,0≤r<k;
16.基于所述第二二元组中的随机数进行聚合,以得到k个所述第一分区。
17.可选的,在本技术一些可能的实现方式中,所述方法还包括:
18.确定执行对象对应的处理能力信息;
19.基于所述邻居节点的数量以及所述处理能力信息确定所述执行对象对应的单位
处理参数;
20.根据所述初始图数据对应的数据量与所述单位处理参数的比值确定k的取值。
21.可选的,在本技术一些可能的实现方式中,所述将k*t个所述子图分割分区作为图节点,以生成所述初始图数据对应的缩略图,包括:
22.将k*t个所述子图分割分区作为图节点;
23.基于所述图节点中所述子图分割分区的节点数量配置权重信息;
24.确定所述图节点中连接边跨越了所述子图分割分区的边的连接节点,以作为缩略边;
25.基于所述权重信息确定所述缩略边的数量,以生成所述初始图数据对应的所述缩略图。
26.可选的,在本技术一些可能的实现方式中,所述基于所述权重信息确定所述缩略边的数量,以生成所述初始图数据对应的所述缩略图,包括:
27.获取所述缩略图对应的平均节点度数,以确定缩略系数;
28.对每个所述图节点基于所述缩略系数进行节点稀疏处理,并对稀疏处理后的边进行提取得到处理边;
29.基于所述处理边的权重信息进行排序,以确定目标边;
30.根据所述目标边生成所述初始图数据对应的所述缩略图。
31.可选的,在本技术一些可能的实现方式中,所述方法还包括:
32.确定所述第二分区对应的分区子图;
33.对每个所述第二分区对应的分区子图进行图分割,以得到t个所述第二分区对应的子图分割分区;
34.将k*t个所述第二分区对应的子图分割分区作为图节点,以生成所述第二分区对应的缩略图;
35.将所述第二分区对应的缩略图分割为k个第三分区,并基于所述第三分区对所述初始图数据中的节点进行分区,以得到循环节点集合。
36.可选的,在本技术一些可能的实现方式中,所述方法还包括:
37.获取所述循环节点集合对应的分割边数量;
38.若所述分割边数量收敛,则基于所述循环节点集合执行推荐任务。
39.本技术第二方面提供一种图数据的处理装置,包括:
40.获取单元,用于获取初始图数据,并将所述初始图数据分割为k个第一分区,每个所述第一分区对应的数据量接近,k≥2,k为正整数;
41.确定单元,用于确定所述第一分区对应的分区子图;
42.处理单元,用于对每个所述分区子图进行图分割,以得到每个所述分区子图对应的t个子图分割分区,t≥2,t为正整数;
43.所述处理单元,还用于将k*t个所述子图分割分区作为图节点,以生成所述初始图数据对应的缩略图;
44.所述处理单元,还用于将所述缩略图分割为k个第二分区,并基于所述第二分区对所述初始图数据中的节点进行分区,以得到目标节点集合,所述目标节点集合用于推荐任务的执行,每个所述第二分区对应不同的执行对象。
45.可选的,在本技术一些可能的实现方式中,所述获取单元,具体用于获取所述初始图数据;
46.所述获取单元,具体用于确定所述初始图数据中的每个节点对应的邻居节点,以生成第一二元组;
47.所述获取单元,具体用于生成r个随机数,并将所述随机数与所述第一二元组进行组合生成第二二元组,0≤r<k;
48.所述获取单元,具体用于基于所述第二二元组中的随机数进行聚合,以得到k个所述第一分区。
49.可选的,在本技术一些可能的实现方式中,所述获取单元,具体用于确定执行对象对应的处理能力信息;
50.所述获取单元,具体用于基于所述邻居节点的数量以及所述处理能力信息确定所述执行对象对应的单位处理参数;
51.所述获取单元,具体用于根据所述初始图数据对应的数据量与所述单位处理参数的比值确定k的取值。
52.可选的,在本技术一些可能的实现方式中,所述处理单元,具体用于将k*t个所述子图分割分区作为图节点;
53.所述处理单元,具体用于基于所述图节点中所述子图分割分区的节点数量配置权重信息;
54.所述处理单元,具体用于确定所述图节点中连接边跨越了所述子图分割分区的边的连接节点,以作为缩略边;
55.所述处理单元,具体用于基于所述权重信息确定所述缩略边的数量,以生成所述初始图数据对应的所述缩略图。
56.可选的,在本技术一些可能的实现方式中,所述处理单元,具体用于获取所述缩略图对应的平均节点度数,以确定缩略系数;
57.所述处理单元,具体用于对每个所述图节点基于所述缩略系数进行节点稀疏处理,并对稀疏处理后的边进行提取得到处理边;
58.所述处理单元,具体用于基于所述处理边的权重信息进行排序,以确定目标边;
59.所述处理单元,具体用于根据所述目标边生成所述初始图数据对应的所述缩略图。
60.可选的,在本技术一些可能的实现方式中,所述处理单元,具体用于确定所述第二分区对应的分区子图;
61.所述处理单元,具体用于对每个所述第二分区对应的分区子图进行图分割,以得到t个所述第二分区对应的子图分割分区;
62.所述处理单元,具体用于将k*t个所述第二分区对应的子图分割分区作为图节点,以生成所述第二分区对应的缩略图;
63.所述处理单元,具体用于将所述第二分区对应的缩略图分割为k个第三分区,并基于所述第三分区对所述初始图数据中的节点进行分区,以得到循环节点集合。
64.可选的,在本技术一些可能的实现方式中,所述处理单元,具体用于获取所述循环节点集合对应的分割边数量;
65.所述处理单元,具体用于若所述分割边数量收敛,则基于所述循环节点集合执行推荐任务。
66.本技术第三方面提供一种计算机设备,包括:存储器、处理器以及总线系统;所述存储器用于存储程序代码;所述处理器用于根据所述程序代码中的指令执行上述第一方面或第一方面任一项所述的图数据的处理方法。
67.本技术第四方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任一项所述的图数据的处理方法。
68.根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面或者第一方面的各种可选实现方式中提供的图数据的处理方法。
69.从以上技术方案可以看出,本技术实施例具有以下优点:
70.通过获取初始图数据,并将初始图数据分割为k个第一分区,该每个第一分区对应的数据量接近,且每个所述第一分区对应不同的执行对象;然后确定第一分区对应的分区子图;并对每个分区子图进行图分割,以得到每个分区子图对应的t个子图分割分区;进一步的将k*t个子图分割分区作为图节点,以生成初始图数据对应的缩略图;进而将缩略图分割为k个第二分区,并基于第二分区对初始图数据中的节点进行分区,以得到目标节点集合,该目标节点集合用于推荐任务的执行。从而实现并行的图数据处理的过程,由于采用多个第一分区可以采用不同的设备进行处理,即每个设备对各自的数据进行图分割,并可以通过缩略图进行映射还原,充分利用了并行处理的优势,提高了图数据的处理效率。
附图说明
71.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所可以使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
72.图1为图数据的处理系统运行的网络架构图;
73.图2为本技术实施例提供的一种图数据的处理的流程架构图;
74.图3为本技术实施例提供的一种图数据的处理方法的流程图;
75.图4为本技术实施例提供的一种图数据的处理方法的场景示意图;
76.图5为本技术实施例提供的另一种图数据的处理方法的场景示意图;
77.图6为本技术实施例提供的另一种图数据的处理方法的流程图;
78.图7为本技术实施例提供的一种图数据的处理装置的结构示意图;
79.图8为本技术实施例提供的一种终端设备的结构示意图;
80.图9为本技术实施例提供的一种服务器的结构示意图;
81.图10a为本技术实施例提供的一种数据共享系统;
82.图10b为本技术实施例提供的一种区块链的区块组成;
83.图10c为本技术实施例提供的一种区块链节点的输入信息。
具体实施方式
84.本技术实施例提供了一种图数据的处理方法以及相关装置,可以应用于终端设备中包含图数据的处理功能的系统或程序中,通过获取初始图数据,并将初始图数据分割为k个第一分区,该每个第一分区对应的数据量接近,且每个所述第一分区对应不同的执行对象;然后确定第一分区对应的分区子图;并对每个分区子图进行图分割,以得到每个分区子图对应的t个子图分割分区;进一步的将k*t个子图分割分区作为图节点,以生成初始图数据对应的缩略图;进而将缩略图分割为k个第二分区,并基于第二分区对初始图数据中的节点进行分区,以得到目标节点集合,该目标节点集合用于推荐任务的执行。从而实现并行的图数据处理的过程,由于采用多个第一分区可以采用不同的设备进行处理,即每个设备对各自的数据进行图分割,并可以通过缩略图进行映射还原,充分利用了并行处理的优势,提高了图数据的处理效率。
85.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
86.首先,对本技术实施例中可能出现的一些名词进行解释。
87.图分割:将图g=(v,e)的节点集合v划分成k个大小均衡且互不重叠的子集,表示为v1,v2,......,v
kv1
,v2,......,vk,其中k是一个用户定义的超参数,v是节点集合,e是边集合。因此,对于任意1≤i<j≤k,可以有并且
88.应理解,本技术提供的图数据的处理方法可以应用于终端设备中包含图数据的处理功能的系统或程序中,例如社交应用,具体的,图数据的处理系统可以运行于如图1所示的网络架构中,如图1所示,是图数据的处理系统运行的网络架构图,如图可知,图数据的处理系统可以提供与多个信息源的图数据的处理过程,即通过终端侧的请求操作,触发服务器对终端对应的图数据进行处理,从而下发对应的处理结果;可以理解的是,图1中示出了多种终端设备,终端设备可以为计算机设备,在实际场景中可以有更多或更少种类的终端设备参与到图数据的处理的过程中,具体数量和种类因实际场景而定,此处不做限定,另外,图1中示出了一个服务器,但在实际场景中,也可以有多个服务器的参与,具体服务器数量因实际场景而定。
89.本实施例中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,终端以及服务器可以连接组成区块链网络,本技术在此不做限制。
90.可以理解的是,上述图数据的处理系统可以运行于个人移动终端,例如:作为社交应用这样的应用,也可以运行于服务器,还可以作为运行于第三方设备以提供图数据的处理,以得到信息源的图数据的处理处理结果;具体的图数据的处理系统可以是以一种程序的形式在上述设备中运行,也可以作为上述设备中的系统部件进行运行,还可以作为云端服务程序的一种,具体运作模式因实际场景而定,此处不做限定。
91.随着互联网技术的迅速发展,人们对社交网络的要求越来越高。社交网络可以通过图数据进行构建,图数据钟的点表示实体,边表示两个实体间的关系,通过对图数据进行处理即可对社交网络进行关联或简化。
92.一般,对图数据进行处理可以采用metis算法,即通过不断地压缩图结构,使得两个节点会合并成一个新的节点。因此,基于新的节点,得到一个规模较小的图。
93.但是,在大规模数据处理的场景中,metis算法可以将所有数据放到内存中,对计算机内存有较高,并且具有较高的计算代价和较长的运行时间,影响图数据处理的效率。
94.为了解决上述问题,本技术提出了一种图数据的处理方法,该方法应用于图2所示的图数据的处理的流程框架中,如图2所示,为本技术实施例提供的一种图数据的处理的流程架构图,用户通过终端的交互操作,在服务器生成对应的社交关系网,通过对社交关系网进行图数据处理,以确定分割后的集合,从而进行针对性的对象推荐。
95.本实施例进行图数据处理的过程中通过分而治之和迭代的策略,先将数据随机地分布在不同机器,接着每个机器对各自的数据进行图分割,然后基于所有机器的结果构建一个通信图,通过对通信图的分割,可以把所有图数据进行再次分割,得到这轮计算的结果。最后通过多轮次的迭代计算,可以得到最终的结果。
96.可以理解的是,本技术所提供的方法可以为一种程序的写入,以作为硬件系统中的一种处理逻辑,也可以作为一种图数据的处理装置,采用集成或外接的方式实现上述处理逻辑。作为一种实现方式,该图数据的处理装置通过获取初始图数据,并将初始图数据分割为k个第一分区,该每个第一分区对应的数据量接近,且每个所述第一分区对应不同的执行对象;然后确定第一分区对应的分区子图;并对每个分区子图进行图分割,以得到每个分区子图对应的t个子图分割分区;进一步的将k*t个子图分割分区作为图节点,以生成初始图数据对应的缩略图;进而将缩略图分割为k个第二分区,并基于第二分区对初始图数据中的节点进行分区,以得到目标节点集合,该目标节点集合用于推荐任务的执行。从而实现并行的图数据处理的过程,由于采用多个第一分区可以采用不同的设备进行处理,即每个设备对各自的数据进行图分割,并可以通过缩略图进行映射还原,充分利用了并行处理的优势,提高了图数据的处理效率。
97.结合上述流程架构,下面将对本技术中图数据的处理方法进行介绍,请参阅图3,图3为本技术实施例提供的一种图数据的处理方法的流程图,该管理方法可以是由服务器或终端执行的,本技术实施例至少包括以下步骤:
98.301、获取初始图数据,并将初始图数据分割为k个第一分区。
99.本实施例中,初始图数据可以是用户对应的社交网络,可以将复杂的社交网络进行分割(简化),获取针对性的对象推荐,例如好友推荐、师傅推荐等。即本实施例将分布式图分割算法应用到游戏的好友推荐系统中,作为好友推荐的召回方法。具体来说,在对抗游戏的师徒推荐中,可以首先用分布式图分割算法对对抗游戏的社交网络进行分割。如图4所
示,图4为本技术实施例提供的一种图数据的处理方法的场景示意图;图中示出了用户进行师傅推荐的场景,其中的玩家1、玩家2和玩家3即由本实施例的图数据处理方法所得。因此,对抗游戏中的每个玩家都会属于一个分区。对于每个玩家,可以从这个玩家所在的分区中,随机挑选50个玩家,再进行排序推荐。可以将这个在分区内挑选的方法,跟在整个用户集合内挑选的方法,进行了对比,实验结果表明有较大的提升。
100.具体的,第一分区即为子即的划分过程,其中每个第一分区对应的数据量接近,每个第一分区对应不同的执行对象,k≥2,k为正整数,从而可以进行分布式的处理过程;即给定一个图数据g=(v,e),其中v是节点集合,e是边集合。初始分区(初始图数据)可以将v分成k个子集,表示为v1,v2,...,vk,使得这些子集满足这些特点:(1)(2)对于任意的i和j有(3)对于-1<α<1有|vi|=(1 α)|v|/k,也就是子集的大小比较接近。
101.可选的,对于初始图数据的分割过程,可以首先获取初始图数据;然后确定初始图数据中的每个节点对应的邻居节点,以生成第一二元组;并生成r个随机数,并将随机数与第一二元组进行组合生成第二二元组,0≤r<k;进而基于第二二元组中的随机数进行聚合,以得到k个第一分区。这是为了减少计算复杂度,避免“鸡生蛋、蛋生鸡”问题,所采用的随机分割的方法,即将图数据g=(v,e)按邻接表的方式存储,也就是每个节点u存储一个邻居二元组《u,nbr(u)》(第一二元组),其中nbr(u)是节点u在g上邻居节点集合;在分布式计算中,可以在处理每个节点u的邻居二元组《u,nbr(u)》的时候,采用随机数生成器,产生一个数r满足0≤r<k。因此可以将二元组改为一个新的二元组《r,《u,nbr(u)》》(第二二元组),其中第一个元素是随机数r,第二个元素是节点u的邻居二元组;将新的二元组(第二二元组)根据第一个元素进行聚合(采用了spark中的group by函数),使得具有相同随机数的节点及其邻居二元组都聚合到同一个分区,形成初始的分布式图分割算法的输入分区。
102.可以理解的是,由于采用随机分配的方式,得到的k个初始分区的大小可以比较相近。并且,采用了聚合操作,使得拥有相同分区号码的数据都汇聚到了同一个机器上。
103.另外,关于参数k的设置,可以考虑了机器内存大小、子图分割性能和数据量之间的关系。故可以确定执行对象对应的处理能力信息;然后基于邻居节点的数量以及处理能力信息确定执行对象对应的单位处理参数;并根据初始图数据对应的数据量与单位处理参数的比值确定k的取值。即假设一个机器上可以较好地处理子图的大小为y(单位处理参数),而数据量总数为x(初始图数据对应的数据量),那么可以有k=x/y。其中,y的取值应考虑单机图分割和机器内存的关系。用m表示机器内存大小(处理能力信息),则单机图分割可以处理的数据量y=m/d,其中d是子图的平均度数(也就是一个节点的平均邻居数量)。故k的取值为k=dx/m。
104.可以理解的是,初始图分割分区可以采用标签传播方法来计算每个节点的一个初始分区,从而提升初始图数据的分区效率。
105.302、确定第一分区对应的分区子图。
106.本实施例中,即对于同一个分区vi(第一分区)的数据,也就是第一元素相同的新的二元组《i,《u,nbr(u)》》,构建基于同一个分区上的子图gi=(vi,ei),具体可以从新的二
元组中,抽取邻居二元组的第一元素,形成节点集合vi;然后从新的二元组中,对于邻居二元组的第二元素,保留在集合vi中的邻居节点v,也就是v∈nbr(u)并且v∈vi。将保留下来的邻居节点v与节点u形成边(u,v),放入集合ei(分区子图)中。
107.303、对每个分区子图进行图分割,以得到每个分区子图对应的t个子图分割分区。
108.本实施例中,t≥2,t为正整数;即给定一个子图gi=(vi,ei),可以对gi进行图分割,使得集合vi划分成t个子集,表示为满足这些条件:(1)(2)对于任意的j和j'有(3)对于-1<α<1有(4)最小化跨不同子集的边的数量。可以采用了metis算法进行单机上的子图图分割。因此,当k个子图都完成了各自的图分割,一共产生了k*t个子集(子图分割分区)。
109.另外,关于参数t的设置,可以考虑最后总的子集的数量,也就是k*t的值不能太大。因为,后面缩略图的大小与k*t有关,如果t太大的话,则缩略图无法在单个机器上处理。为了使得缩略图可以存在一个机器的内存上,假设内存大小为m,缩略图的平均节点度数为h,则可以有k*th=m。也就是说,可以设置t=m/kh。
110.304、将k*t个子图分割分区作为图节点,以生成初始图数据对应的缩略图。
111.本实施例中,即基于k*t个子集(子图分割分区),可以构建了一个缩略图,从而可以像素描一样描绘图的整体结构。
112.具体的,可以首先将k*t个子图分割分区作为图节点,即对每个子图gi的第j个子集形成一个缩略图的节点p
i,j
;然后基于图节点中子图分割分区的节点数量配置权重信息,即设置节点p
i,j
的权重为子集的节点数量,也就是并确定图节点中连接边跨越了子图分割分区的边的连接节点,以作为缩略边,即对于任意的两个节点和如果存在跨越子集的边(u,v)∈e,则构建缩略图的边(p
i,j
,pi′
,j

);进而基于权重信息确定缩略边的数量,以生成初始图数据对应的缩略图,即设置缩略图的边(p
i,j
,pi′
,j

)的权重为跨越不同子集的边的数量,也就是
113.当图分割质量较低的情况下,缩略图的边数量可能会比较多,那么会导致缩略图的大小超过计算机内存而不能被有效地处理。为了解决这个问题,可以采用了图稀疏的方式,来减少缩略图的边数量,同时保证图的连通性。具体可以首先获取缩略图对应的平均节点度数,以确定缩略系数,即对每个节点p
i,j
,取权重最大的h/2个邻居节点,因此这个步骤中每个节点保留h/2条边;对每个图节点基于缩略系数进行节点稀疏处理,并对稀疏处理后的边进行提取得到处理边,例如取整体上权重最大的k*th/2条边;合并上述步骤的边,形成新的边集合,得到最后稀疏化的缩略图边集合;然后基于处理边的权重信息进行排序,以确定目标边;从而根据目标边生成初始图数据对应的缩略图。
114.进一步的,对于上述步骤中取前k*th/2条最大权重的边的一个做法是,对所有边进行按权重逆序排序,然后取排序后的前k*th/2条即可。但这个做法会有o(m log m)的计
算复杂度。当缩略图的边数量比较多的情况下,运行时间依然非常久。为了提升运行效率,可以利用采样的方法,具体可以首先统计缩略图的所有边数量,表示为m;然后计算保留比例为q=k*th/2m;并从所有边中随机采样出固定数量的边,比如10000条边;接下来对采样的边进行按边权重的逆序排序;并计算采样边中权重最大的前10000q条边的最小权重,也就是逆序排序后位置10000q的那条边的权重,表示为w';然后保留缩略图中权重大于等于w'的边,构成这个算法的结果集。该方法只需对所有边进行一遍扫描,因此具有线性计算复杂度,有较高的运行效率。
115.305、将缩略图分割为k个第二分区,并基于第二分区对初始图数据中的节点进行分区,以得到目标节点集合。
116.本实施例中,目标节点集合用于推荐任务的执行,推荐任务即为从目标节点集合选取对象进行推荐,例如推荐任务为对抗游戏中的师徒推荐,可以首先采用本实施例的分布式图分割算法对对抗游戏的社交网络进行分割,由于对抗游戏中的每个玩家都会属于一个分区;对于每个玩家,可以从这个玩家所在的分区中,随机挑选50个玩家,再进行师徒关系的排序推荐,即推荐任务为从随机挑选的50个玩家中选取与发起推荐任务对象具有社交关联的对象进行推荐;此处,本实施例不仅限于师徒关系的推荐,对于与社交网络相关联的对象推荐场景亦适用,例如好友推荐、同学推荐等。
117.可以理解的是,推荐任务不仅限于基于社交网络的对象推荐,还可以基于交易关系网、交互关系网等,即在上述类型的关系网相当于社交网络进行分割的过程,此处不作限定。
118.具体的,基于第二分区进行分区的过程即给定一个缩略图ga=(va,ea,w,w

),其中va是节点集合,ea是边集合,w是节点的权重,w

是边的权重。与在子图上的图分割不同,缩略图的分割需考虑节点的权重和边的权重,使得缩略图分割成k个子集,表示为v1,v2,...,vk,满足这些条件:(1)(2)(3)对于-1<α<1有(4)最小化跨不同子集的边的数量。也就是说,缩略图上的图分割要使得每个分区的节点权重总和比较接近,那么对应的原始图的节点数量也会比较接近。可以采用了metis算法[1]进行单机上的缩略图图分割。
[0119]
用γ(p)表示缩略图的节点p所在的分区id,则1≤γ(p)≤k。对于缩略图节点p对应的子集p,可以有子集p中的节点的分区id也都为γ(p)。那么,到这一步,可以将原始图中的节点分成了新的k个分区。可以会计算新的分区的分割边数量,以及迭代次数,从而判断是否可以进行下一轮的迭代计算,否则将返回目前的分区结果,作为最终的图分割结果。
[0120]
本实施例在每一次迭代中,采用分而治之的策略,基于之前的分割结果进行细粒度的分割,再基于分割块进行粗粒度的分割,最终得到这层的分割结果。
[0121]
可以理解的是,上述过程可以进行迭代,即在确定第二分区后,确定第二分区对应的分区子图;并对每个第二分区对应的分区子图进行图分割,以得到t个第二分区对应的子图分割分区;然后将k*t个第二分区对应的子图分割分区作为图节点,以生成第二分区对应的缩略图;进而将第二分区对应的缩略图分割为k个第三分区,并基于第三分区对初始图数据中的节点进行分区,以得到循环节点集合,从而实现迭代的过程。
[0122]
在一种可能的场景中,每个第一分区对应不同的执行对象,在确定第二分区时,第二分区也是对应不同的执行对象,故第三分区也是对应不同的执行对象,即本实施采用了分布式架构的处理方式,可以基于多个执行对象并行的处理图分割过程,提高计算效率。
[0123]
可以理解的是,对于不同的执行对象,可以是不同的服务器,也可以是对于同一服务器中处理资源划分所得的不同分区,此处不作限定。
[0124]
应当注意的是,推荐任务的发起对象可以是执行对象,即通过执行对象进行例如好友推荐的过程;推荐任务的发起对象可以是执行对象之外的业务服务器,例如负责存储社交网络信息的社交网络服务器发起推荐任务,由计算群组中的执行对象进行本实施例的图分割过程,具体的发起对象因实际场景而定。
[0125]
另外,对于迭代的停止条件,可以是获取循环节点集合对应的分割边数量;若分割边数量收敛,则基于循环节点集合执行推荐任务。也可以是迭代达到预设次数则停止。
[0126]
在一种可能的场景中,图处理的过程如图5所示,图5为本技术实施例提供的另一种图数据的处理方法的场景示意图;图中示出了如下过程:
[0127]
(1)初始节点的分区,使得节点被分成k个分区,每个分区的数据量大小比较接近,并且可以放到机器内存处理;
[0128]
(2)基于每个分区的数据,构建这个分区上的子图;
[0129]
(3)对子图进行图分割,得到t个子图分割分区;
[0130]
(4)基于子图分割分区构建一个缩略图,从而可以描述图的大概结构;
[0131]
(5)对缩略图进行重新分割,然后重新映射到原始节点,得到每个节点的分割分区id;
[0132]
(6)计算新分割结果的分割边数量;
[0133]
如果迭代次数达到一定数量或者分割边数量达到比较收敛的情况,则停止,否则跳到步骤(2)继续新的一轮计算。
[0134]
结合上述实施例可知,通过获取初始图数据,并将初始图数据分割为k个第一分区,该每个第一分区对应的数据量接近,且每个所述第一分区对应不同的执行对象;然后确定第一分区对应的分区子图;并对每个分区子图进行图分割,以得到每个分区子图对应的t个子图分割分区;进一步的将k*t个子图分割分区作为图节点,以生成初始图数据对应的缩略图;进而将缩略图分割为k个第二分区,并基于第二分区对初始图数据中的节点进行分区,以得到目标节点集合,该目标节点集合用于推荐任务的执行。从而实现并行的图数据处理的过程,由于采用多个第一分区可以采用不同的设备进行处理,即每个设备对各自的数据进行图分割,并可以通过缩略图进行映射还原,充分利用了并行处理的优势,提高了图数据的处理效率。
[0135]
上述实施例介绍了图数据的处理过程,下面集合社交推荐场景对图数据的处理过程进行说明。请参阅图6,图6为本技术实施例提供的另一种图数据的处理方法的流程图,本技术实施例至少包括以下步骤:
[0136]
601、获取目标对象发起的推荐请求。
[0137]
本实施例中,推荐请求即为好友推荐请求,即将分布式图分割算法应用到游戏的好友推荐系统中,作为好友推荐的召回方法。具体的,在对抗游戏的师徒推荐中,可以首先用分布式图分割算法对对抗游戏的社交网络进行分割。因此,对抗游戏中的每个玩家都会
属于一个分区。对于每个玩家,可以从这个玩家所在的分区中,随机挑选50个玩家,再进行排序推荐。可以将这个在分区内挑选的方法,跟在整个用户集合内挑选的方法,进行了对比,实验结果表明有较大的提升。
[0138]
602、响应于推荐请求对目标对象的社交关系网进行扩展。
[0139]
本实施例中,对目标对象的社交关系网进行扩展即通过目标对象的好友关系进行社交网络中边点的扩展,或调用更大规模的社交网络对应的图数据。
[0140]
603、将扩展后的社交数据进行图分割,以得到目标推荐集合。
[0141]
本实施例中,进行图分割的过程参见图3所示步骤301-305的过程,此处不作赘述。
[0142]
具体的,在对抗游戏的师徒推荐场景中,可以为每个玩家a都推荐10个其他玩家,从而使得玩家a可以点击这些玩家建立师徒关系。由于可以推荐给玩家a的其他玩家数量可能非常多,因此可以先计算一个候选集,从而可以在候选集上利用排序模型进行精细化排序。精细化排序的模型采用了xgboost,而候选集的生成方法采用了本技术方案的图分割方法。具体来说,可以基于对抗游戏的玩家在游戏中好友关系社交网络,运行了本实施例的分布式图分割方法,使得每个玩家都属于某一个分割分区。故对于每一个玩家a,可以从a的分割分区中随机选取100个玩家作为玩家a的推荐候选集。作为对比方法,可以采用了从所有玩家随机选取100个玩家作为候选集。两种候选集的生成方法,都采用了相同的精细化排序模型。表1为不同算法的应用效果对比,其中展示了两种方法的应用效果,分布式图分割方法比随机方法在点击率相对提升了11.62%,在当日通过率上相对提升了3.12%。
[0143]
表1 不同算法的应用效果对比
[0144]
算法点击率%当日通过率%随机候选集31.5867.26分布式图分割候选集35.2535.25
[0145]
本实施例设计一个大规模分布式图分割计算框架,基于spark或者mapreduce计算框架,可以处理百亿级规模的图数据;这个框架通过多次迭代计算,逐步提升分割质量;且每次迭代计算采用了双层次方法,通过分而治之的策略,将大图先粗粒度地分割成若干块,然后每块再进行细粒度的图分割,最后对细粒度的分割块再进行重新分割,得到这一层的分割结果;并设计了缩略图构建方法和图稀疏方法,有效地提升了构图效率;还将分布式图分割算法用来生成推荐的候选集,提升了业务应用效果。
[0146]
为了更好的实施本技术实施例的上述方案,下面还提供用于实施上述方案的相关装置。请参阅图7,图7为本技术实施例提供的一种图数据的处理装置的结构示意图,图数据的处理装置700包括:
[0147]
获取单元701,用于获取初始图数据,并将所述初始图数据分割为k个第一分区,每个所述第一分区对应的数据量接近,k≥2,k为正整数;
[0148]
确定单元702,用于确定所述第一分区对应的分区子图;
[0149]
处理单元703,用于对每个所述分区子图进行图分割,以得到每个所述分区子图对应的t个子图分割分区,t≥2,t为正整数;
[0150]
所述处理单元703,还用于将k*t个所述子图分割分区作为图节点,以生成所述初始图数据对应的缩略图;
[0151]
所述处理单元703,还用于将所述缩略图分割为k个第二分区,并基于所述第二分
区对所述初始图数据中的节点进行分区,以得到目标节点集合,所述目标节点集合用于推荐任务的执行。
[0152]
可选的,在本技术一些可能的实现方式中,所述获取单元701,具体用于获取所述初始图数据;
[0153]
所述获取单元701,具体用于确定所述初始图数据中的每个节点对应的邻居节点,以生成第一二元组;
[0154]
所述获取单元701,具体用于生成r个随机数,并将所述随机数与所述第一二元组进行组合生成第二二元组,0≤r<k;
[0155]
所述获取单元701,具体用于基于所述第二二元组中的随机数进行聚合,以得到k个所述第一分区。
[0156]
可选的,在本技术一些可能的实现方式中,所述获取单元701,具体用于确定执行对象对应的处理能力信息;
[0157]
所述获取单元701,具体用于基于所述邻居节点的数量以及所述处理能力信息确定所述执行对象对应的单位处理参数;
[0158]
所述获取单元701,具体用于根据所述初始图数据对应的数据量与所述单位处理参数的比值确定k的取值。
[0159]
可选的,在本技术一些可能的实现方式中,所述处理单元703,具体用于将k*t个所述子图分割分区作为图节点;
[0160]
所述处理单元703,具体用于基于所述图节点中所述子图分割分区的节点数量配置权重信息;
[0161]
所述处理单元703,具体用于确定所述图节点中连接边跨越了所述子图分割分区的边的连接节点,以作为缩略边;
[0162]
所述处理单元703,具体用于基于所述权重信息确定所述缩略边的数量,以生成所述初始图数据对应的所述缩略图。
[0163]
可选的,在本技术一些可能的实现方式中,所述处理单元703,具体用于获取所述缩略图对应的平均节点度数,以确定缩略系数;
[0164]
所述处理单元703,具体用于对每个所述图节点基于所述缩略系数进行节点稀疏处理,并对稀疏处理后的边进行提取得到处理边;
[0165]
所述处理单元703,具体用于基于所述处理边的权重信息进行排序,以确定目标边;
[0166]
所述处理单元703,具体用于根据所述目标边生成所述初始图数据对应的所述缩略图。
[0167]
可选的,在本技术一些可能的实现方式中,所述处理单元703,具体用于确定所述第二分区对应的分区子图;
[0168]
所述处理单元703,具体用于对每个所述第二分区对应的分区子图进行图分割,以得到t个所述第二分区对应的子图分割分区;
[0169]
所述处理单元703,具体用于将k*t个所述第二分区对应的子图分割分区作为图节点,以生成所述第二分区对应的缩略图;
[0170]
所述处理单元703,具体用于将所述第二分区对应的缩略图分割为k个第三分区,
并基于所述第三分区对所述初始图数据中的节点进行分区,以得到循环节点集合。
[0171]
可选的,在本技术一些可能的实现方式中,所述处理单元703,具体用于获取所述循环节点集合对应的分割边数量;
[0172]
所述处理单元703,具体用于若所述分割边数量收敛,则基于所述循环节点集合执行推荐任务。
[0173]
通过获取初始图数据,并将初始图数据分割为k个第一分区,该每个第一分区对应的数据量接近,且每个所述第一分区对应不同的执行对象;然后确定第一分区对应的分区子图;并对每个分区子图进行图分割,以得到每个分区子图对应的t个子图分割分区;进一步的将k*t个子图分割分区作为图节点,以生成初始图数据对应的缩略图;进而将缩略图分割为k个第二分区,并基于第二分区对初始图数据中的节点进行分区,以得到目标节点集合,该目标节点集合用于推荐任务的执行。从而实现并行的图数据处理的过程,由于采用多个第一分区可以采用不同的设备进行处理,即每个设备对各自的数据进行图分割,并可以通过缩略图进行映射还原,充分利用了并行处理的优势,提高了图数据的处理效率。
[0174]
本技术实施例还提供了一种终端设备,如图8所示,是本技术实施例提供的另一种终端设备的结构示意图,为了便于说明,仅示出了与本技术实施例相关的部分,具体技术细节未揭示的,请参照本技术实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(personal digital assistant,pda)、销售终端(point of sales,pos)、车载电脑等任意终端设备,以终端为手机为例:
[0175]
图8示出的是与本技术实施例提供的终端相关的手机的部分结构的框图。参考图8,手机包括:射频(radio frequency,rf)电路810、存储器820、输入单元830、显示单元840、传感器850、音频电路860、无线保真(wireless fidelity,wifi)模块870、处理器880、以及电源890等部件。本领域技术人员可以理解,图8中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0176]
下面结合图8对手机的各个构成部件进行具体的介绍:
[0177]
rf电路810可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器880处理;另外,将设计上行的数据发送给基站。通常,rf电路810包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noise amplifier,lna)、双工器等。此外,rf电路810还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(global system of mobile communication,gsm)、通用分组无线服务(general packet radio service,gprs)、码分多址(code division multiple access,cdma)、宽带码分多址(wideband code division multiple access,wcdma)、长期演进(long term evolution,lte)、电子邮件、短消息服务(short messaging service,sms)等。
[0178]
存储器820可用于存储软件程序以及模块,处理器880通过运行存储在存储器820的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器820可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器
件。
[0179]
输入单元830可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元830可包括触控面板831以及其他输入设备832。触控面板831,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板831上或在触控面板831附近的操作,以及在触控面板831上一定范围内的隔空触控操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板831可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器880,并能接收处理器880发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板831。除了触控面板831,输入单元830还可以包括其他输入设备832。具体地,其他输入设备832可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0180]
显示单元840可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元840可包括显示面板841,可选的,可以采用液晶显示器(liquid crystal display,lcd)、有机发光二极管(organic light-emitting diode,oled)等形式来配置显示面板841。进一步的,触控面板831可覆盖显示面板841,当触控面板831检测到在其上或附近的触摸操作后,传送给处理器880以确定触摸事件的类型,随后处理器880根据触摸事件的类型在显示面板841上提供相应的视觉输出。虽然在图8中,触控面板831与显示面板841是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板831与显示面板841集成而实现手机的输入和输出功能。
[0181]
手机还可包括至少一种传感器850,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板841的亮度,接近传感器可在手机移动到耳边时,关闭显示面板841和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0182]
音频电路860、扬声器861,传声器862可提供用户与手机之间的音频接口。音频电路860可将接收到的音频数据转换后的电信号,传输到扬声器861,由扬声器861转换为声音信号输出;另一方面,传声器862将收集的声音信号转换为电信号,由音频电路860接收后转换为音频数据,再将音频数据输出处理器880处理后,经rf电路810以发送给比如另一手机,或者将音频数据输出至存储器820以便进一步处理。
[0183]
wifi属于短距离无线传输技术,手机通过wifi模块870可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图8示出了wifi模块870,但是可以理解的是,其并不属于手机的必须构成,完全可以根据可以在不改变发明的本质的范围内而省略。
[0184]
处理器880是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器820内的软件程序和/或模块,以及调用存储在存储器820内的
数据,执行手机的各种功能和处理数据,从而对手机进行整体管理。可选的,处理器880可包括一个或多个处理单元;可选的,处理器880可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器880中。
[0185]
手机还包括给各个部件供电的电源890(比如电池),可选的,电源可以通过电源管理系统与处理器880逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0186]
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
[0187]
在本技术实施例中,该终端所包括的处理器880还具有执行如上述页面处理方法的各个步骤的功能。
[0188]
本技术实施例还提供了一种服务器,请参阅图9,图9是本技术实施例提供的一种服务器的结构示意图,该服务器900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,cpu)922(例如,一个或一个以上处理器)和存储器932,一个或一个以上存储应用程序942或数据944的存储介质930(例如一个或一个以上海量存储设备)。其中,存储器932和存储介质930可以是短暂存储或持久存储。存储在存储介质930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器922可以设置为与存储介质930通信,在服务器900上执行存储介质930中的一系列指令操作。
[0189]
服务器900还可以包括一个或一个以上电源926,一个或一个以上有线或无线网络接口950,一个或一个以上输入输出接口958,和/或,一个或一个以上操作系统941,例如windows servertm,mac os xtm,unixtm,linuxtm,freebsdtm等等。
[0190]
上述实施例中由管理装置所执行的步骤可以基于该图9所示的服务器结构。
[0191]
本技术实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有图数据的处理指令,当其在计算机上运行时,使得计算机执行如前述图3至图6所示实施例描述的方法中图数据的处理装置所执行的步骤。
[0192]
本技术实施例中还提供一种包括图数据的处理指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如前述图3至6所示实施例描述的方法中图数据的处理装置所执行的步骤。
[0193]
本技术实施例还提供了一种图数据的处理系统,所述图数据的处理系统可以包含图7所描述实施例中的图数据的处理装置,或图8所描述实施例中的终端设备,或者图9所描述的服务器。
[0194]
在一种可能的场景中,本技术中的网络资源管理的方法应用于区块链设备中,即每个分区对应的执行对象为区块链设备,且该区块链设备为区块链中的节点,下面结合附图进行说明;参见图10a所示的数据共享系统,数据共享系统1000是指用于进行节点与节点之间数据共享的系统,该数据共享系统中可以包括多个节点1001,多个节点1001可以是指数据共享系统中各个客户端。每个节点1001在进行正常工作可以接收到输入信息,并基于接收到的输入信息维护该数据共享系统内的共享数据。为了保证数据共享系统内的信息互通,数据共享系统中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当数据共享系统中的任意节点接收到输入信息时,数据共享系统中的
其他节点便根据共识算法获取该输入信息,将该输入信息作为共享数据中的数据进行存储,使得数据共享系统中全部节点上存储的数据均一致。
[0195]
对于数据共享系统中的每个节点,均具有与其对应的节点标识,而且数据共享系统中的每个节点均可以存储有数据共享系统中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至数据共享系统中的其他节点。每个节点中可维护一个如下表所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为ip(internet protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息,表2中仅以ip地址为例进行说明。
[0196]
表2 节点名称与节点标识的对应关系
[0197]
节点名称节点标识节点1117.114.151.174节点2117.116.189.145
……
节点n119.123.789.258
[0198]
数据共享系统中的每个节点均存储一条相同的区块链。区块链由多个区块组成,参见图10b,区块链由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
[0199]
在生成区块链中的各个区块时,参见图10c,区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行特征值计算,使得计算得到的特征值可以满足下述公式:
[0200]
sha256(sha256(version prev_hash merkle_root ntime nbits x))<target
[0201]
其中,sha256为计算特征值所用的特征值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头特征值;merkle_root为输入信息的特征值;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;target为特征值阈值,该特征值阈值可以根据nbits确定得到。
[0202]
这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据数据共享系统中其他节点的节点标识,将新生成的区块分别发送给其所在的数据共享系统中的其他节点,由其他节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
[0203]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0204]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的
划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0205]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的可以选择其中的部分或者全部单元来实现本实施例方案的目的。
[0206]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0207]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,图数据的处理装置,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0208]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献