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)|2015. 10. 14.
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과 같은 기존 플랫폼은 그래프 계산에 집중할 뿐 패턴 열거에 부적합하므로, 이러한 한계를 극복한다.
  • 분산 시스템에 깊은 전문 지식이 없어도 개발이 간편한 사용자 友好的 고수준 프로그래밍 추상화를 제공한다.
  • 빈도 높은 부분그래프 마이닝, 모티프 수 세기, 클리크 탐지와 같은 기초 그래프 마이닝 문제에 대해 처음으로 확장 가능한 분산 구현을 가능하게 한다.

제안 방법

  • Pregel의 '정점을 생각하라'(TLV) 모델에서 벗어나 부분그래프 인스턴스(임bedding)에 초점을 맞춘 새로운 '임베딩을 생각하라'(TLE) 파라다임을 도입한다.
  • 필터-프로세스 계산 모델을 설계한다: 시스템은 자동으로 모든 관련 부분그래프(임베딩)를 탐색하고, 각 임베딩을 사용자가 정의한 응용 프로그램에 전달해 필터링 및 처리를 수행한다.
  • 사용자가 정의한 기준에 따라 각 부분그래프를 확장할지 또는 기각할지 결정하도록, 사용자가 지정한 조건에 따라 확장 또는 기각을 제어하는 분산형 확장 가능한 엔진을 사용한다.
  • 밀도가 높고 낮은 그래프 모두를 지원하기 위해 ODAGs(순서가 지정된 DAG)와 같은 최적화된 데이터 구조를 사용해 압축 및 탐색 효율성을 높인다.
  • 사용자가 저수준 분산 로직을 추상화할 수 있도록 일반 클러스터에서 MapReduce 유사 실행 모델을 사용해 시스템을 구현한다.
  • 사용자가 오직 두 가지 함수만 정의하면 되는 최소한의 고수준 API를 제공한다: 필터(비유망 부분그래프를 제거하기 위해)와 프로세스(출력을 생성하거나 유효한 패턴을 세기 위해).

실험 결과

연구 질문

  • RQ1지수적 부분그래프 열거와 패턴 탐지 작업을 포함한 그래프 마이닝 워크로드를 효율적으로 지원하도록, 분산 시스템을 기초부터 설계할 수 있는가?
  • RQ2성능을 희생시키지 않고도 확장 가능한 그래프 마이닝 알고리즘 개발을 단순화할 수 있는 고수준 프로그래밍 모델을 어떻게 추상화할 수 있는가?
  • RQ3Arabesque와 같은 시스템이 일반 하드웨어에서 트리리언의 부분그래프를 처리하면서 낮은 지연 시간과 높은 처리량을 유지할 수 있는가?
  • RQ4제안된 필터-프로세스 모델이 기존의 분산 솔루션보다 성능이 뛰어나거나, 빈도 높은 부분그래프 마이닝 및 모티프 수 세기와 같은 고전적 그래프 마이닝 문제에 대해 처음으로 분산 솔루션을 가능하게 할 수 있는가?

주요 결과

  • 대규모 소셜 네트워크 그래프에서 모티프 수 세기 작업을 수행할 때, Arabesque는 6시간 18분 내로 최대 8.4조 개의 부분그래프 임베딩을 처리하는 데 성공했다.
  • 클리크 탐지 워크로드에서 시스템은 30분 내로 300억 개의 임베딩을 분석하여 밀도가 높은 그래프에서 높은 효율성을 입증했다.
  • 크기가 크고 희박한 인스타그램 그래프의 경우, ODAGs로 인한 메모리 제약으로 인해 MS=3(최대 크기)로 제한되었지만, 여전히 수십억 개의 임베딩을 효과적으로 처리했다.
  • 빈도 높은 부분그래프 마이닝, 모티프 수 세기, 클리크 탐지에 대해 처음으로 사용 가능한 분산 구현을 제공하여 수억 개의 간선을 가진 그래프의 확장 가능한 분석을 가능하게 했다.
  • Arabesque의 고수준 API는 사용자가 단 몇 줄의 코드로 복잡한 그래프 마이닝 알고리즘을 구현할 수 있게 하여 개발 복잡도를 크게 감소시켰다.
  • 임베딩 표현을 위한 ODAGs의 사용은 압축 및 탐색 효율성을 높여 밀도가 높은 그래프에서 성능을 향상시켰지만, 희박한 그래프에서는 메모리 제약으로 인해 더 큰 탐색 단계가 제한되었다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.