[发明专利]一种基于预过滤的大规模图中三角形计算方法有效
申请号: | 201710023351.8 | 申请日: | 2017-01-12 |
公开(公告)号: | CN106776045B | 公开(公告)日: | 2020-03-10 |
发明(设计)人: | 祝园园;张颢 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F16/901 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 | 代理人: | 鲁力 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 过滤 大规模 三角形 计算方法 | ||
本发明公开了一种有效的通过布隆过滤器来过滤三角形生过程中的无效楔形结构的基于预过滤的大规模图中三角形计算方法,本发明是为了解决现有的三角形计算方法在大规模图中因中间结果过大而无法应用的问题,通过布隆过滤器进行预过滤,可以有效降低中间数据量,进而提高计算效率。在该方法中优化了传统的布隆滤波器使之能够有效的适应分布式环境且能够被快速计算,并进一步加快的三角形的计算过程。
技术领域
本发明属于图算法领域,尤其涉及大规模图中的三角形计算方法。
背景技术
在抽象化数据的过程中,图结构是一个非常有效的数据结构。它在众多领域中有着重要应用,例如它可以用来表示互联网、社交网络、道路网络等等。随着图的规模变得越来越大,图上的大量结构挖掘问题亟待解决,引起众多研究者的关注。其中一个重要的基础问题就是三角形计算,即寻找图中由三个顶点组成的三元组△(u,v,w),使得任意两个点对(u,v),(v,w)和(w,u)之间各存在一条边。三角形计算问题是图算法中的一个基本操作,在图上的很多计算问题中起着重要作用。例如,它可用来实现对社区发现中具有重要意义的k-truss算法,还可以用来计算图的基本属性包括聚类系数(clustering coefficient)等。
随着现代社会中图的规模越来越大,三角形计算问题面临着很多新的挑战。如何从如此大规模的数据中快速计算出所有的三角形是目前的应用瓶颈。通常,我们需要借助分布式的计算平台,才能在较短的时间内处理规模较大的图。现有的三角形计算方法大都依赖于MapReduce计算平台。MapReduce本身源自于函数式语言,主要通过Map(映射)和Reduce(化简)这两个步骤来并行处理大规模的数据集。首先,Map函数以键值对<Key,Value>的形式读入数据,并且对于每一条数据进行指定的操作,并创建多个新的列表来保存Map的处理结果,可高度并行。当Map工作完成后,系统会接着对新生成的多个列表进行清理(Shuffle)和排序。最后,会对这些新创建的列表进行Reduce操作,即对一个列表中的元素根据由map函数设定的Key值进行适当的合并。MapReduce不仅能用于处理大规模数据,而且能自动进行并行化、负载均衡和灾备管理等。此外,MapReduce的伸缩性非常好,即随着服务器数目的增加,计算能力具有显著提高。尽管如此,现有的基于MapReduce平台的三角形计算方法仍然无法高效的处理大规模图(例如包含十亿以上顶点和边的图)。其主要原因在于生成三角形之前,现有的方法需要输出所有的可能构成三角形的楔形结构∨(u,v,w),使得u和v之间存一条边,且v和w之间存在一条边。这种楔形结构的数目通常非常庞大(常为三角形数目的几倍甚至几十倍),造成大量的中间结果在shuffle阶段产生,因而阻碍了现有三角形计算方法在大规模图上的应用,且造成很高的计算开销。
发明内容
本发明针对现有技术的不足,提供一种基于预过滤的大规模图中三角形计算方法。
本发明的技术方案为一种基于预过滤的大规模图中三角形计算方法,包含以下步骤:
一种基于预过滤的大规模图中三角形计算方法,其特征在于,包含以下步骤:
步骤1、生成一个空间有效的用来存储图中所有的边的布隆过滤器,能够过滤掉不能组成三角形的楔形结构,减少中间结果的输出,具体是:首先获得图G=(V,E)中边的总个数|E|;定义将布隆过滤器B划分为P片,标记为B1,B2,…,BP,根据已知的边数来计算每个布隆过滤器分片中应该包含的边数目数Ci;然后依据Ci,在每一台机器上,输入相应数量的边,并生成布隆过滤器的分片Bi;最后获取所有机器上的布隆滤波器,合并其为完整的布隆过滤器B;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710023351.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于数据流的硬件加速方法及系统
- 下一篇:一种SCST读写优化方法及系统