Skip to main content
QUICK REVIEW

[论文解读] Arabesque: A System for Distributed Graph Mining - Extended version

Carlos H. C. Teixeira, Alexandre J. Fonseca|arXiv (Cornell University)|Oct 14, 2015
Graph Theory and Algorithms参考文献 33被引用 6
一句话总结

Arabesque 是一个分布式图挖掘系统,引入了一种高层的过滤-处理模型,以自动化大规模图中子图的探索。它通过简单的 API 实现了对频繁子图、基序和团的高效、可扩展挖掘,在商品化集群上实现了对万亿级子图的性能表现。

ABSTRACT

Distributed data processing platforms such as MapReduce and Pregel have substantially simplified the design and deployment of certain classes of distributed graph analytics algorithms. However, these platforms do not represent a good match for distributed graph mining problems, as for example finding frequent subgraphs in a graph. Given an input graph, these problems require exploring a very large number of subgraphs and finding patterns that match some "interestingness" criteria desired by the user. These algorithms are very important for areas such as social net- works, semantic web, and bioinformatics. In this paper, we present Arabesque, the first distributed data processing platform for implementing graph mining algorithms. Arabesque automates the process of exploring a very large number of subgraphs. It defines a high-level filter-process computational model that simplifies the development of scalable graph mining algorithms: Arabesque explores subgraphs and passes them to the application, which must simply compute outputs and decide whether the subgraph should be further extended. We use Arabesque's API to produce distributed solutions to three fundamental graph mining problems: frequent subgraph mining, counting motifs, and finding cliques. Our implementations require a handful of lines of code, scale to trillions of subgraphs, and represent in some cases the first available distributed solutions.

研究动机与目标

  • 解决分布式图挖掘的可扩展性挑战,特别是涉及指数级子图枚举的问题。
  • 克服现有平台(如 MapReduce 和 Pregel)的局限性,这些平台因侧重图计算而非模式枚举,而不适合图挖掘任务。
  • 提供一种用户友好的高层编程抽象,简化分布式图挖掘算法的开发,而无需深入掌握分布式系统知识。
  • 实现频繁子图挖掘、基序计数和团检测等基础图挖掘问题的首个可扩展、分布式实现。

提出的方法

  • 提出一种新颖的“像嵌入一样思考”(TLE)范式,从 Pregel 的“像顶点一样思考”(TLV)模型转变为关注子图实例(嵌入)而非顶点级计算。
  • 设计一种过滤-处理计算模型:系统自动探索所有相关子图(嵌入),并将每个子图传递给用户定义的应用程序进行过滤和处理。
  • 使用分布式、可扩展的引擎系统性地枚举嵌入,由应用程序根据用户定义的标准指定是否扩展或丢弃每个子图。
  • 通过优化的数据结构(如有序有向无环图 ODAGs)支持密集图和稀疏图,实现压缩和探索过程中的高效遍历。
  • 在商品化集群上实现系统,采用类似 MapReduce 的执行模型,将底层分布逻辑抽象化,避免用户直接处理。
  • 提供最小化、高层的 API,用户仅需定义两个函数:filter(用于剪枝无希望的子图)和 process(用于生成输出或计数有效模式)。

实验结果

研究问题

  • RQ1能否从零开始设计一个分布式系统,以高效支持图挖掘工作负载,这些工作负载涉及指数级子图枚举和模式发现?
  • RQ2如何抽象出一种高层编程模型,以简化可扩展图挖掘算法的开发,同时不牺牲性能?
  • RQ3Arabesque 这类系统在商品化硬件上处理万亿级子图时,其可扩展性能达到何种程度,同时保持低延迟和高吞吐量?
  • RQ4所提出的过滤-处理模型是否能够超越或首次实现经典图挖掘问题(如频繁子图挖掘和基序计数)的分布式解决方案?

主要发现

  • 在大型社交网络图上进行基序计数时,Arabesque 在 6 小时 18 分钟内成功处理了高达 8.4 万亿个子图嵌入。
  • 在团查找工作负载中,系统仅用 30 分钟就分析了 300 亿个嵌入,显示出在密集图上的高效性能。
  • 对于 Instagram 图(大规模稀疏图),由于 ODAGs 的内存限制,MS=3(最大大小),但系统仍能有效处理数十亿个嵌入。
  • 系统支持首次可用的频繁子图挖掘、基序计数和团检测的分布式实现,使具有数亿条边的图能够实现可扩展分析。
  • Arabesque 的高层 API 允许用户仅用寥寥数行代码即可实现复杂的图挖掘算法,显著降低了开发复杂度。
  • 使用 ODAGs 表示子图可实现高效压缩和遍历,提升了密集图上的性能,但内存限制限制了稀疏图上更大探索步长的实现。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。