[论文解读] Counting Triangles in Massive Graphs with MapReduce
本文提出了一种基于MapReduce的楔子采样可扩展实现,用于在大规模图中高效计数三角形,能够在32个节点的Hadoop集群上以每百万条边0.33秒加上225秒固定开销的性能,在一小时内处理包含2.4亿个节点和85亿条边的图,实现对全局及按度数分箱的聚类系数与三角形统计的精确估计。
Graphs and networks are used to model interactions in a variety of contexts. There is a growing need to quickly assess the characteristics of a graph in order to understand its underlying structure. Some of the most useful metrics are triangle-based and give a measure of the connectedness of mutual friends. This is often summarized in terms of clustering coefficients, which measure the likelihood that two neighbors of a node are themselves connected. Computing these measures exactly for large-scale networks is prohibitively expensive in both memory and time. However, a recent wedge sampling algorithm has proved successful in efficiently and accurately estimating clustering coefficients. In this paper, we describe how to implement this approach in MapReduce to deal with massive graphs. We show results on publicly-available networks, the largest of which is 132M nodes and 4.7B edges, as well as artificially generated networks (using the Graph500 benchmark), the largest of which has 240M nodes and 8.5B edges. We can estimate the clustering coefficient by degree bin (e.g., we use exponential binning) and the number of triangles per bin, as well as the global clustering coefficient and total number of triangles, in an average of 0.33 seconds per million edges plus overhead (approximately 225 seconds total for our configuration). The technique can also be used to study triangle statistics such as the ratio of the highest and lowest degree, and we highlight differences between social and non-social networks. To the best of our knowledge, these are the largest triangle-based graph computations published to date.
研究动机与目标
- 解决由于高内存和时间成本导致在大规模图中精确计数三角形在计算上不可行的问题。
- 通过分布式计算实现对大规模网络中聚类系数和三角形统计的高效、可扩展估计。
- 证明在MapReduce中使用楔子采样可处理超过1亿个节点和85亿条边的图,克服负载均衡与数据分布挑战。
- 对真实网络与合成网络提供三角形特征的细粒度分析,包括度数相关性与分箱聚类系数。
- 在真实世界图与Graph500基准图上验证该方法,表明其在极低开销下实现高精度。
提出的方法
- 该方法使用楔子采样:采样顶点对作为潜在的楔子中心,并检查闭合边是否存在以形成三角形。
- 使用MapReduce将边数据分布在各节点上,通过多个阶段计算顶点度数、采样楔子并验证三角形闭合。
- 在阶段1a中计算度数分布,阶段2c中使用基于顶点度数的概率分布执行楔子采样。
- 算法使用指数分箱将顶点按度数分组,并计算各分箱内的度数聚类系数与三角形计数。
- 使用特殊数据结构最小化MapReduce阶段中的数据洗牌,特别是在读取完整边列表的阶段(1a、2c、3b)。
- 可选的标注阶段(4a、4b)为采样到的三角形添加度数信息,以支持下游分析(如度数相关性)。
实验结果
研究问题
- RQ1楔子采样是否能在MapReduce框架中有效并行化,以扩展至包含超过1亿个节点和85亿条边的大规模图?
- RQ2基于MapReduce的楔子采样方法是否能以低方差与低计算开销,实现对全局及按度数分箱聚类系数的准确估计?
- RQ3社交网络(如hollywood-2011)与非社交网络(如Graph500、uk-union)在三角形度数相关性与聚类特征上存在何种差异?
- RQ4Graph500基准生成的网络在三角形与聚类特性方面与真实世界数据相比,其真实性在多大程度上成立?
- RQ5同一MapReduce流水线是否能以接近单个全局系数的计算成本,高效计算多种聚类度量(全局、分箱、度数相关)?
主要发现
- 处理的最大图包含2.4亿个节点与85亿条边,在32个节点的Hadoop集群上分析耗时不足一小时。
- 该方法每百万条边耗时约0.33秒,加上225秒的固定开销,表现出与边数的线性可扩展性。
- 在hollywood-2011社交网络中,三角形度数相关性显示最小度与最大度之间存在强烈的正相关,表明度数同配混合。
- 相比之下,uk-union网页图与Graph500网络在最小度分箱中平均最大度几乎不变,表明缺乏同配性。
- 该方法对三角形数量的估计具有高精度,500万个楔子采样样本的结果在可接受方差范围内与预期值一致。
- 该方法实现了按度数分组的聚类系数与各分箱内三角形计数的高效计算,无需将完整图存储在内存中。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。