一种基于k-core集散结构的社交网络事件流通信方法技术

技术编号:18085903 阅读:41 留言:0更新日期:2018-05-31 14:35
本发明专利技术公开了一种基于k‑core集散结构的社交网络事件流通信方法,属于图计算领域。其中的方法实现包括:对于社交图,利用k‑core算法得到core值最大的点集;根据社交图和core值最大的点集,得到点集中每个点的密集子中心结构的密度,将密度最大的密集子中心结构的中心点记为c;对以c点为中心点的密集子中心结构的边进行调度,得到用户之间的通信策略;将社交图的c点和已进行调度的边去掉,重复上述步骤,直至得到社交图中所有用户之间的通信策略。本发明专利技术在显著改善通信开销的同时极大地减少了计算复杂度。

【技术实现步骤摘要】
一种基于k-core集散结构的社交网络事件流通信方法
本专利技术属于图计算领域,更具体地,涉及一种基于k-core集散结构的社交网络事件流通信方法。
技术介绍
在过去的十几年里,社交网络应用迅速普及,主流社交网络应用拥有大量的活跃用户。一个在线社交网络系统为用户提供两个基本操作:分享新事件及浏览好友更新的事件流。事件流的更新占据了大型社交网络的主要工作负载。在社交网络系统中,用户相关的数据是以用户为单位的视图方式进行存储的,而用户及其好友的视图通常分布在不同的服务器上,这使得大量社交网络用户以及他们之间错综复杂的联系会在进行事件流通信时产生大量服务器间的通信开销。因此在社交网络系统中如何进行高效的事件流通信是一个有挑战性的难题。现有技术存在无法在改善通信开销的同时减少计算复杂度的技术问题。
技术实现思路
针对现有技术的以上缺陷或改进需求,本专利技术提供了一种基于k-core集散结构的社交网络事件流通信方法,由此解决现有技术存在无法在改善通信开销的同时减少计算复杂度的技术问题。为实现上述目的,按照本专利技术的一个方面,提供了一种基于k-core集散结构的社交网络事件流通信方法,包括:(1)对于社交图,利用k-core算法得到core值最大的点集;(2)根据社交图和core值最大的点集,得到点集中每个点的密集子中心结构的密度,将密度最大的密集子中心结构的中心点记为c;(3)对以c点为中心点的密集子中心结构的边进行调度,得到用户之间的通信策略;(4)将社交图的c点和已进行调度的边去掉,重复步骤(1)-(3),直至得到社交图中所有用户之间的通信策略。进一步的,社交图为:G=(V,E),V表示社交网络中的所有用户,在社交图中用点表示,E表示社交图中的用户关系,在社交图中用边表示。进一步的,步骤(1)包括:(1-1)获取社交图中的所有点的度,根据顶点的度对所有点排序,删掉度最小的点以及度最小的点所在的边,度最小的点的core值就是它们当前的度;(1-2)对社交图删去度最小的点后剩下的点重新计算度数,重复步骤(1-1)直到社交图中所有的点都被删掉,得到社交图的core值最大的点集。进一步的,步骤(2)包括:对于core值最大的点集中的点,利用pregel并行执行步骤(2-1)-(2-3),得到点集中每个点的密集子中心结构的密度,将密度最大的密集子中心结构的中心点记为c,(2-1)根据社交图和core值最大的点集,得到core值最大的点集中的点u、点u的邻居点、点u与邻居点相连的边和邻居点之间相连的边构成以点u为中心点的中心结构,进而得到中心结构的初始密度占u与邻居点相连的边和邻居点之间相连的边之和为中心结构的边的条数e,点u和点u的邻居点之和为中心结构的点的个数v;(2-2)去掉中心结构中度最小的点以及与该点相连的边,得到当前中心结构,重新计算当前中心结构的密度d’;(2-3)重复步骤(2-2),直到以u为中心点的中心结构中的点被全部去掉,在整个过程中,密度最大的时候对应的中心结构为以u为中心点的最大密集子中心结构。进一步的,步骤(3)包括:以c点为中心点的密集子中心结构中除了c点以外的点为其他点,其他点包括点x和点y,对于从点x指向c点的边,赋为push边,push边上的两个用户之间的通信策略为push策略;对于从c点指向点y的边,赋为pull边,pull边上的两个用户之间的通信策略为pull策略;对于从点x指向点y的边或者从点y指向点x的边,即是通过pigggyback结构省略的边,不需要赋予通信策略。附图说明图1是本专利技术实施例提供的一种基于k-core集散结构的社交网络事件流通信方法的流程图;图2是本专利技术实施例提供的求core值最大的点u的密集子中心结构的流程图;图3是本专利技术实施例提供的对密集子中心结构的边进行调度的示意图;图4是本专利技术实施例提供的用k-core算法找出core值最大的点集;图5(a)是本专利技术实施例提供的core值最大的点2的密集子中心结构示意图;图5(b)是本专利技术实施例提供的core值最大的点3的密集子中心结构示意图;图5(c)是本专利技术实施例提供的core值最大的点4的密集子中心结构示意图;图5(d)是本专利技术实施例提供的core值最大的点5的密集子中心结构示意图;图5(e)是本专利技术实施例提供的core值最大的点6的密集子中心结构示意图;图6是本专利技术实施例提供的以点5为中心点的密集子中心结构的边的调度示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。此外,下面所描述的本专利技术各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。如图1所示,本专利技术提供了一种基于k-core集散结构的社交网络事件流通信方法,包括以下步骤:(1)对于社交图,利用k-core算法得到core值最大的点集;(2)根据社交图和core值最大的点集,得到点集中每个点的密集子中心结构的密度,将密度最大的密集子中心结构的中心点记为c;(3)对以c点为中心点的密集子中心结构的边进行调度,得到用户之间的通信策略;(4)将社交图的c点和已进行调度的边去掉,重复步骤(1)-(3),直至得到社交图中所有用户之间的通信策略。进一步的,社交图为:G=(V,E),V表示社交网络中的所有用户,在社交图中用点表示,E表示社交图中的用户关系,在社交图中用边表示。步骤(1)包括:(1-1)获取社交图中的所有点的度,根据顶点的度对所有点排序,删掉度最小的点以及度最小的点所在的边,度最小的点的core值就是它们当前的度;(1-2)对社交图删去度最小的点后剩下的点重新计算度数,重复步骤(1-1)直到社交图中所有的点都被删掉,得到社交图的core值最大的点集。如图2所示,为求core值最大的点u的密集子中心结构的流程图;包括以下步骤:对于core值最大的点集中的点,利用pregel并行执行步骤(2-1)-(2-3),得到点集中每个点的密集子中心结构的密度,将密度最大的密集子中心结构的中心点记为c,(2-1)根据社交图和core值最大的点集,得到core值最大的点集中的点u、点u的邻居点、点u与邻居点相连的边和邻居点之间相连的边构成以点u为中心点的中心结构,进而得到中心结构的初始密度占u与邻居点相连的边和邻居点之间相连的边之和为中心结构的边的条数e,点u和点u的邻居点之和为中心结构的点的个数v;(2-2)去掉中心结构中度最小的点以及与该点相连的边,得到当前中心结构,重新计算当前中心结构的密度d’;(2-3)重复步骤(2-2),直到以u为中心点的中心结构中的点被全部去掉,在整个过程中,密度最大的时候对应的中心结构为以u为中心点的最大密集子中心结构。如图3所示,为本专利技术对密集子中心结构的边进行调度的示意图,包括以下步骤:以c点为中心点的密集子中心结构中除了c点以外的点为其他点,其他点包括点x和点y,对于从点x指向c点的边,赋为push边,push边上的两个用户之间的通信策略为push策略;对于从c点指向点y的边,赋为pull边,pull边上的两个用户之间的通信策略为pull策略;对于从点x指向点y的边或者从点y指向本文档来自技高网...
一种基于k-core集散结构的社交网络事件流通信方法

【技术保护点】
一种基于k‑core集散结构的社交网络事件流通信方法,其特征在于,包括:(1)对于社交图,利用k‑core算法得到core值最大的点集;(2)根据社交图和core值最大的点集,得到点集中每个点的密集子中心结构的密度,将密度最大的密集子中心结构的中心点记为c;(3)对以c点为中心点的密集子中心结构的边进行调度,得到用户之间的通信策略;(4)将社交图的c点和已进行调度的边去掉,重复步骤(1)‑(3),直至得到社交图中所有用户之间的通信策略。

【技术特征摘要】
1.一种基于k-core集散结构的社交网络事件流通信方法,其特征在于,包括:(1)对于社交图,利用k-core算法得到core值最大的点集;(2)根据社交图和core值最大的点集,得到点集中每个点的密集子中心结构的密度,将密度最大的密集子中心结构的中心点记为c;(3)对以c点为中心点的密集子中心结构的边进行调度,得到用户之间的通信策略;(4)将社交图的c点和已进行调度的边去掉,重复步骤(1)-(3),直至得到社交图中所有用户之间的通信策略。2.如权利要求1所述的一种基于k-core集散结构的社交网络事件流通信方法,其特征在于,所述社交图为:G=(V,E),V表示社交网络中的所有用户,在社交图中用点表示,E表示社交图中的用户关系,在社交图中用边表示。3.如权利要求2所述的一种基于k-core集散结构的社交网络事件流通信方法,其特征在于,所述步骤(1)包括:(1-1)获取社交图中的所有点的度,根据顶点的度对所有点排序,删掉度最小的点以及度最小的点所在的边,度最小的点的core值就是它们当前的度;(1-2)对社交图删去度最小的点后剩下的点重新计算度数,重复步骤(1-1)直到社交图中所有的点都被删掉,得到社交图的core值最大的点集。4.如权利要求1或2所述的一种基于k-core集散结构的社交网络事件流通信方法,其特征在于,所述步骤(2)包括:对于core值最大的点集中...

【专利技术属性】
技术研发人员:行方家陈汉华金海林昌富
申请(专利权)人:华中科技大学
类型:发明
国别省市:湖北,42

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

1