[发明专利]一种低空间开销的大规模图中三角形计数方法及系统在审
| 申请号: | 202010920564.2 | 申请日: | 2020-09-04 |
| 公开(公告)号: | CN112131444A | 公开(公告)日: | 2020-12-25 |
| 发明(设计)人: | 肖侬;牟者斌;卢宇彤;陈志广 | 申请(专利权)人: | 中山大学 |
| 主分类号: | G06F16/9035 | 分类号: | G06F16/9035;G06F16/901 |
| 代理公司: | 深圳市创富知识产权代理有限公司 44367 | 代理人: | 李思坪 |
| 地址: | 510275 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 空间 开销 大规模 三角形 计数 方法 系统 | ||
本发明公开了一种低空间开销的大规模图中三角形计数方法及系统,该方法包括:获取数据集并根据数据集构建有向图,得到图数据;遍历图数据中的所有顶点并将顶点按预设规则放入预设的布隆筛;根据图数据中的边得到该边对应的两个顶点;判断到这两个顶点存在于布隆筛中,计算这两个顶点的邻居顶点集合的交集,得到该边对应三角形的数量。该系统包括:图数据模块、放入模块、顶点模块和交集模块。通过使用本发明,可以在保证低空间开销的情况下从大规模的数据中快速计算出三角形的数量。本发明作为一种低空间开销的大规模图中三角形计数方法及系统,可广泛应用于大规模数据处理领域。
技术领域
本发明涉及大规模数据处理领域,尤其涉及一种低空间开销的大规模图中三角形计数方法及系统。
背景技术
随着我们在生活中使用互联网的次数日益增多,各类数据的增加速度与总量也与日俱增,甚至用“指数性增长”“海量”等词都难以描述数据的增量和增速。然而人们对数据进行分析和处理的速度却未能跟上数据的增长规模和速度,大规模的数据中隐藏的信息与价值被我们所挖掘和利用的还只是冰山一角。所以近几年,针对互联网的研究方向和趋势便是朝着如何分析处理大规模数据的方向发展。作为常见并且重要的数据结构之一,图数据可以更好的表达个体与个体以及个体与群体之间的联系,因此也越来越引发科研工作者以及企业的关注。
对图数据分析中,三角形可以表示其中的关联关系,三角形计数问题已有很多解决方案.其基本方法主要有两类。一类是通过遍历图中的所有顶点,在其所有的邻居节点间查找存在的不重复边的数量,该数量之和即为该图的三角形的数量的三倍。另一类方法是通过遍历图中所有边,对其两顶点的邻居顶点集取交集,每条边的该交集的元素数量之和即为该图的三角形数量的三倍。如何从大规模的数据中快速计算出所有的三角形,是目前的应用瓶颈。虽然针对大规模数据集,已有许多成熟的方法,如基于MapReduce计算平台的分布式方法等等。但是针对现实世界中的各类大规模的稀疏图,如社交网络,交通路网等,往往存在着或空间开销过大(例如单机方法无法处理大规模的图)或时间开销过大(例如随机访问内存或在分布式方法中通信过于频繁)等问题。
发明内容
为了解决上述技术问题,本发明的目的是提供一种低空间开销的大规模图中三角形计数方法及系统,可以在保证低空间开销的情况下从大规模的数据中快速计算出三角形的数量。
本发明所采用的第一技术方案是:一种低空间开销的大规模图中三角形计数方法,包括以下步骤:
获取数据集并根据数据集构建有向图,得到图数据;
遍历图数据中的所有顶点并将顶点按预设规则放入预设的布隆筛;
根据图数据中的边得到该边对应的两个顶点;
判断到这两个顶点存在于布隆筛中,计算这两个顶点的邻居顶点集合的交集,得到该边对应三角形的数量。
进一步,还包括:
遍历图数据中所有的边并得到所有边对应参与构成三角形的数量;
将所有边对应参与构成三角形的数进行加和,得到图数据的三角形总数量。
进一步,所述获取数据集并根据数据集构建有向图,得到图数据这一步骤,其具体包括:
获取数据集并将数据集重新组织成有序的边集数组;
根据边集数组构建大小为顶点数量并储存有索引信息的索引数组;
根据边集数组和索引数组得到图数据。
进一步,所述遍历图数据中的所有顶点并将顶点按预设规则放入布隆筛这一步骤,其具体包括:
依次遍历图中所有的顶点并将该顶点的邻居顶点中所有不相同的两顶点构成顶点对;
将顶点对按照顶点编号小的在前、大的在后的形式加入布隆筛中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中山大学,未经中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010920564.2/2.html,转载请声明来源钻瓜专利网。





