Skip to main content
QUICK REVIEW

[논문 리뷰] Kaleido: An Efficient Out-of-core Graph Mining System on A Single Machine

Cheng Zhao, Zhibin Zhang|arXiv (Cornell University)|2019. 05. 23.
Graph Theory and Algorithms참고 문헌 33인용 수 5
한 줄 요약

Kaleido는 단일 머신에서 디스크를 메모리의 연장선으로 간주하여 그래프 마이닝 중 생성되는 대규모 중간 데이터를 효율적으로 처리하는 오프라인 그래프 마이닝 시스템이다. 중간 데이터 구조로 텐서 기반 구조를 사용하고, 9개 이하 정점을 가진 부분그래프에 대해 경량의 고유값 기반 동형성 검사 알고리즘을 적용하여 Arabesque와 RStream 대비 각각 12.3배, 40.0배의 성능 향상을 달성한다.

ABSTRACT

Graph mining is one of the most important categories of graph algorithms. However, exploring the subgraphs of an input graph produces a huge amount of intermediate data. The 'think like a vertex' programming paradigm, pioneered by Pregel, cannot readily formulate mining problems, which is designed to produce graph computation problems like PageRank. Existing mining systems like Arabesque and RStream need large amounts of computing and memory resources. In this paper, we present Kaleido, an efficient single machine, out-of-core graph mining system which treats disks as an extension of memory. Kaleido treats intermediate data in graph mining tasks as a tensor and adopts a succinct data structure for the intermediate data. Kaleido utilizes the eigenvalue of the adjacency matrix of a subgraph to efficiently solve the subgraph isomorphism problems with an acceptable constraint that the vertex number of a subgraph is less than 9. Kaleido implements half-memory-half-disk storage for storing large intermediate data, which treats the disk as an extension of the memory. Comparing with two state-of-the-art mining systems, Arabesque and RStream, Kaleido outperforms them by a GeoMean 12.3$ imes$ and 40.0$ imes$ respectively.

연구 동기 및 목표

  • 단일 머신에서 그래프 마이닝 과정에서 생성되는 대규모 중간 데이터(임beddings)를 관리하는 데 도전하는 것.
  • Arabesque와 RStream과 같은 기존 시스템이 동형성 검사 및 데이터 처리 과정에서 높은 I/O 및 메모리 오버헤드를 겪는 문제를 해결하는 것.
  • 디스크를 메모리의 연장선으로 간주하고 압축된 텐서 기반 데이터 구조를 사용하여 확장성 있고 고성능의 그래프 마이닝을 가능하게 하는 것.
  • 작은 부분그래프(≤9정점)에 특화된 빠르고 메모리 소비가 적은 동형성 검사 방법을 개발하여 비용이 많이 드는 표준 레이블링 방식을 피하는 것.
  • 비전문가도 부분그래프 중심 모델을 기반으로 간단하고 사용자 友好的한 API를 통해 그래프 마이닝 워크로드를 표현할 수 있도록 하는 것.

제안 방법

  • 그래프 마이닝 중 생성되는 중간 임beddings를 텐서로 표현하여 압축되고 효율적인 저장 및 처리를 가능하게 한다.
  • 메모리의 절반을 사용하고 디스크의 절반을 사용하는 저장 관리 전략을 구현하여 주 메모리가 소진되면 데이터를 동적으로 디스크로 오프로딩한다.
  • 정점 수 ≤9개인 부분그래프에 대해 고유값 기반 동형성 검사를 사용하여 비용이 많이 드는 표준 레이블링 방식을 피하고 메모리 사용량을 줄인다.
  • TLE와 유사한 부분그래프 중심 프로그래밍 모델을 적용하여 워크로드 표현을 선언적이고 사용자 친화적으로 만든다.
  • RStream과 같은 시스템에서 흔히 발생하는 중복 I/O 및 조인 연산을 최소화함으로써 엣지 유도 및 버텍스 유도 탐색을 최적화한다.
  • 스펙트럴 그래프 이론을 활용하여 소형 부분그래프의 빠른 비교가 가능한 경량이면서 고성능의 동형성 검사기 통합

실험 결과

연구 질문

  • RQ1제한된 주 메모리가 있는 단일 머신에서 그래프 마이닝 중 생성되는 중간 데이터를 어떻게 효율적으로 저장하고 처리할 수 있는가?
  • RQ2작은 부분그래프에 대해 고유값 기반 동형성 검사가 그래프 마이닝 워크로드에서 표준 레이블링 방식보다 성능이 뛰어나게 될 수 있는가?
  • RQ3오프라인 그래프 마이닝 시스템에서 디스크를 메모리의 연장선으로 사용할 경우 성능에 어떤 영향을 미치는가?
  • RQ4I/O 및 메모리 효율성 측면에서 전통적인 배열 기반 또는 접두사 트리 기반 표현 방식에 비해 텐서 기반 중간 데이터 구조는 어떻게 비교되는가?
  • RQ5부분그래프 중심 프로그래밍 모델은 성능을 희생시키지 않고 복잡한 그래프 마이닝 알고리즘의 구현을 얼마나 단순화할 수 있는가?

주요 결과

  • Kaleido는 그래프 마이닝 워크로드에서 Arabesque 대비 기하평균 12.3배, RStream 대비 40.0배의 성능 향상을 달성한다.
  • Kaleido의 고유값 기반 동형성 검사기로 인해 메모리 소비가 감소하고, Bliss과 같은 표준 레이블링 도구에서 흔히 발생하는 비용이 많이 드는 메모리 할당/해제 사이클을 피할 수 있다.
  • 디스크를 메모리의 연장선으로 간주함으로써 Kaleido는 최대 135억 개의 임beddings(예: 특허 그래프에서 4-임bedding 마이닝 시)와 같은 대규모 중간 데이터를 효율적으로 관리할 수 있다.
  • 반메모리 반디스크 저장 전략 덕분에 시스템은 투명하게 확장 가능하며, 반복적인 조인에 의존하는 시스템에 비해 I/O 오버헤드를 줄일 수 있다.
  • Kaleido의 중간 데이터 구조는 Arabesque의 접두사 트리 유사 배열보다 더 압축되어 있어 저장 및 접근 비용을 줄일 수 있다.
  • Kaleido의 동형성 검사 알고리즘은 Nauty나 Bliss과 같은 최신 라이브러리보다 빠르고 메모리 효율성이 뛰어나며, 특히 정점 수 ≤9개인 소형 그래프에서 두각을 나타낸다.

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

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

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

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