分布式环境下动态图结构匹配的方法

文档序号:9727560阅读:578来源:国知局
分布式环境下动态图结构匹配的方法
【技术领域】
[0001]本发明涉及增量图结构匹配、分布式计算技术领域,具体涉及一种分布式环境下动态图结构匹配的方法。
【背景技术】
[0002]近年来,社交网络、社交媒体的流行,导致其数据量呈现爆炸式增长,对社交网络大数据的分析、研究也因而成为业界研究的热点问题。由于社交网络可以抽象为图结构一一用户可被视为图的顶点,用户之间的关系可被看作图的边,因此,基于图结构匹配的分析技术已成为社交网络分析的主要技术之一。
[0003]基于不同的应用场景,人们提出了多种图结构匹配语义,其中“子图同构”语义得到了广泛的应用,也成为本发明所采用的查询语义。然而,(1)基于“子图同构”语义的图结构匹配属于一类极难解决的问题一一NP完全问题;(2)社交网络的数据往往是分布式存储的,在分布式环境下,各站点间不得不通过传递数据来帮助求解,从而导致分布式环境下的图结构匹配计算十分复杂。
[0004]此外,社交网络是动态变化的,例如,不断有新边在网络中出现(新增的边被关联上时间戳,表明其出现的时刻)。为了对动态社交网络进行实时监控,一个重要且亟待解决的问题是:给定一个动态图G,模式图Q和时间窗口切,计算在tw时间区间内,G中所有与Q同构的子图g。如果把g中最早和最晚出现的边的时间差定义为i(g),则T(g)〈 = tw。直观上看,该问题的一个解决方法为:对更新后的图GeAG反复进行子图同构计算,然而,考虑到(1)子图同构计算开销大;(2)计算请求十分频繁,因此该方法并不适用。此外,在动态网络环境下,人们往往对某一时间段内的匹配结果感兴趣,而非全部的,基于历史数据的匹配结果。
[0005]为了有效的克服以上困难,更加高效、便捷地对动态社交网络进行分析,我们提出了分布式环境下动态图结构匹配技术来有效解决以上问题。

【发明内容】

[0006]本发明克服了现有技术的不足,提供一种高效、便捷地对动态社交网络进行分析的分布式环境下动态图结构匹配的方法。
[0007]考虑到现有技术的上述问题,根据本发明公开的一个方面,本发明采用以下技术方案:
[0008]—种分布式环境下动态图结构匹配的方法,它包括:
[0009](a)建立由一个主机端和多个工作站点组成的支持支持全双工通信和多线程计算的分布式计算框架;
[0010](b)主机端向工作站点传递信息,并协调工作站点的工作;
[0011 ] (c)工作站点根据主机端传递的信息,计算本地匹配结果M1;
[0012](d)主机端回收各工作站点返回的部分结果Μ,,并汇总得到匹配结果Μ。
[0013]为了更好地实现本发明,进一步的技术方案是:
[0014]根据本发明的一个实施方案,所述主机端执行的步骤包括:
[0015]i)将模式图Q视为无向图,并计算直径d;
[0016]ii)对于每一个工作站点Si,主机端将对应的更新ΔΕ,*送到工作站点S1;
[0017]m)主机端汇总各工作站As,返回的结果吣,得到匹配结果μ。
[0018]根据本发明的另一个实施方案,所述工作站ASi执行的步骤包括:
[0019]i)声明空集合S;空图数据Gs;
[0020]? )对于一个工作站点Si对应的更新AEi中的每条边e= (u,u’);
[0021]??)计算本地图Fi的子图Gsub (e),Fi为对应的工作站点Si中的数据;
[0022 ]iv )将子图Gsub (e)中尚未包含在空集合S中的虚拟节点v_v放入空集合S中;
[0023]V )子图将Gsub(e)并入空图数据Gs中;
[0024]vi)对于空集合S中的所有虚拟节点V,向所有虚拟节点V所在的工作站点Sj请求信息;
[0025]vii)工作站点Si接收从工作站点Sj返回的子图G(v),并与Gs合并;
[0026]vi)当所有请求得到返回后,对子图Gs,工作站点&调用VF2计算得到本地匹配结果Μι;
[0027]k)返回Μ至主机端。
[0028]根据本发明的另一个实施方案,所述工作站AS,执行的步骤还包括:
[0029]i)计算模式图Q中各节点u的拓扑排序;
[0030]? )选择模式图Q中与虚拟节点V标签相同且拓扑排序最大的节点u,构造点对(u,ν);
[0031 ]iii )以(u,ν)为起始,遵循模式图Q的拓扑结构及节点标签,在Fi中进行宽度优先遍历,^为对应的工作站点&中的数据,并将遍历到的点与边放入子图G(v);
[0032]力)返回6(丫)。
[0033]本发明还可以是:
[0034]根据本发明的另一个实施方案,整个分布式计算采用UDP协议。
[0035]与现有技术相比,本发明的有益效果之一是:
[0036]本发明的一种分布式环境下动态图结构匹配的方法,支持全双工通信的分布式计算架构,以及各站点支持多线程计算,满足多任务运算的要求,使得计算高度并行化,实现了动态环境下高效率的分布式计算;从而更加高效、便捷地对动态社交网络进行分析。
【附图说明】
[0037]为了更清楚的说明本申请文件实施例或现有技术中的技术方案,下面将对实施例或现有技术的描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅是对本申请文件中一些实施例的参考,对于本领域技术人员来讲,在不付出创造性劳动的情况下,还可以根据这些附图得到其它的附图。
[0038]图1示出了根据本发明一个实施例的分布式环境下动态图结构匹配框图。
【具体实施方式】
[0039]下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
[0040]在分布式环境下,高效率的对动态社交网络进行基于子图同构语义的结构匹配计算,其包括:(a)分布式计算框架;(b)基于动态网络图的分布式匹配计算。
[0041 ] (a)分布式计算框架:一个主-从(Master-Worker)结构,支持全双工通信的分布式计算架构。同时,各站点支持多线程计算,满足多任务运算的要求,使得计算高度并行化。
[0042](b)基于动态网络图的分布式匹配计算:主机(Master)端与工作站(Worker)端的算法,实现动态环境下高效率的分布式计算。
[0043]本方案具体如下:
[0044](一)分布式计算框架
[0045]分布式环境下,社交网络图G被存储在多个不同的站点,每个站点Si维护当前站点的数据F,。为了维持各片段间数据的连通性,对于跨站点的边e=(v,v’)(v属于FhV’属于FJ,在F冲保留了节点ν’的一个副本,并将其称为“虚拟节点”。通过“虚拟节点ν’”,可以向V’所在站点发送请求,来帮助当前站点获取必要的信息,并在本地进行结构匹配计算。
[0046]为了有效支持分布式环境下的运行计算,我们采用了如下计算框架。通过该框架,实现了站点间消息的异步传递,从而实现了图结构匹配的并行计算。具体框架结构如下:
[0047]计算框架由一个Master站点和多个Worker站点组成。其中,Master站点主要负责:
(1)向Worker站点传递消息,并协调Worker站点的工作;(2)回收各Worker站点返回的部分结果,并汇总。各Worker站点主要执行:(1)本地运算;(2)协同其它站点计算。此外,整个分布式计算采用UDP协议,实现了全双工通信。
[0048](二)基于动态网络图的分布式匹配计算
[0049]在上述计算框架下,我们设计了如下算法,在分布式环境下开展动态图结构匹配计算:
[0050]进程EvaMatch(在Master站点执行)
[0051 ]输入:时间窗口 tw,批量更新ΛΕ,模式图Q;
[0052]输出:匹配结果Μ;
[0053]1.将模式图Q视为无向图,并计算直径d(任意两点间最短距离的最大值);
[0054]2.对于每一个Worker站点Si;
[0055]3.将对应的更新AEi发送到Worker站点Si ;
[0056]4.站点Si调用进程LocalEval (ΔΕι,Fi,Q,d,tw)计算本地匹配结果Mi ;
[OO57 ] 5.汇总各Worker站点返回的结果Mi ;
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1