[논문 리뷰] DwarvesGraph: A High-Performance Graph Mining System with Pattern Decomposition
DwarvesGraph는 고성능 그래프 마이닝 시스템으로, 패턴 분해와 새로운 컴파일레이션 파이프라인, 부분 임bedding API를 통합하여 대규모 그래프에서 하루 이내 실행 시간을 달성하며, GPM 워크로드를 수일에서 수시간으로 단축시킨다. 사용자 노력 최소화로도 성능 향상을 이룬다. 정확한 비용 모델을 통해 최적의 분해 선택을 자동화하고, 전체 임베딩 물리적 저장 없이도 효율적인 UDF 실행을 가능하게 한다.
Graph pattern mining (GPM) is an important application that identifies structures from graphs. Despite the recent progress, the performance gap between the state-of-the-art GPM systems and an efficient algorithm--pattern decomposition--is still at least an order of magnitude. This paper clears the fundamental obstacles of adopting pattern decomposition to a GPM system. First, the performance of pattern decomposition algorithms depends on how to decompose the whole pattern into subpatterns. The original method performs complexity analysis of algorithms for different choices, and selects the one with the lowest complexity upper bound. Clearly, this approach is not feasible for average or even expert users. To solve this problem, we develop a GPM compiler with conventional and GPM-specific optimizations to generate algorithms for different decomposition choices, which are evaluated based on an accurate cost model. The executable of the GPM task is obtained from the algorithm with the best performance. Second, we propose a novel partial-embedding API that is sufficient to construct advanced GPM applications while preserving pattern decomposition algorithm advantages. Compared to state-of-the-art systems, our new GPM system, DwarvesGraph, developed based on the ideas, reduces the execution time of GPM on large graphs and patterns from days to a few hours with low programming effort.
연구 동기 및 목표
- 최첨단 GPM 시스템과 높이 효율적인 패턴 분해 알고리즘 사이의 성능 격차를 해소하기 위해, 구현 장벽으로 인해 여전히 활용되지 못하는 패턴 분해 알고리즘을 일반 목적의 GPM 시스템에 효과적으로 통합하고자 한다.
- 기존 UDF 기반 API가 패턴 분해와 호환되지 않아 전체 임베딩 물리적 저장이 필요로 하며, 성능 향상 효과를 약화시킨다는 문제를 해결하고자 한다.
- 패턴 분해를 위한 최적의 정점 커팅 세트 선택을 자동화하여 수동 복잡도 분석을 피하고 확장 가능한 성능을 보장하고자 한다.
- 다양한 분해 선택에 대해 정확하게 성능을 예측할 수 있는 비용 모델을 설계하여, 가장 빠른 알고리즘 버전을 선택할 수 있도록 보장하고자 한다.
- 고급 GPM 응용 프로그램을 낮은 프로그래밍 노력으로 배포하면서도 패턴 분해의 효율성을 유지하고자 한다.
제안 방법
- 시스템은 GPM 전용 컴파일러를 사용하여, 기존 최적화와 그래프 패턴 마이닝 전용 최적화를 활용해 다양한 분해 선택에 대해 최적화된 알고리즘을 생성한다.
- 전체 물리적 저장을 피하고 필요한 부분만 액세스할 수 있도록 허용하는 부분 임베딩 API를 도입하여, 분해 효율성을 유지한다.
- 정점 커팅 세트로 정의된 후보 분해 전략을 평가하기 위해 정확한 비용 모델을 사용하여 가장 빠른 알고리즘 구현을 선택한다.
- 다중 스레드 실행을 지원하며, 거의 선형 확장성을 보이며 대규모 그래프 처리를 효율적으로 수행한다.
- 컴파일 단계의 오버헤드는 실행 시간에 비해 수 개의 주기수만큼 작아, 복잡한 패턴일 경우에도 실용적이다.
- 부분적으로 물리적 저장된 임베딩에서 제약 조건을 해결하여 레이블 제약 조건과 복잡한 쿼리 의미론을 통합한다.
실험 결과
연구 질문
- RQ1일반 목적의 GPM 시스템에 패턴 분해를 효과적으로 통합할 수 있는가? 이는 사용성이나 표현력의 손실 없이 가능할까?
- RQ2다양한 그래프 패턴과 구조에서 패턴 분해의 성능을 자동화할 수 있는가?
- RQ3실제로 최적의 분해 전략 선택을 안내할 수 있는 정확하고 효율적인 비용 모델은 무엇인가?
- RQ4전체 임베딩 물리적 저장을 피하면서도 정확성과 표현력을 유지할 수 있는 부분 임베딩 API는 어느 정도의 성능을 보일 수 있는가?
- RQ5기존 GPM 시스템과 비교해 시스템은 그래프 크기와 패턴 복잡도 증가에 따라 어떻게 확장되는가?
주요 결과
- WikiVote 그래프에서 크기 5 패턴을 모두 마이닝하는 데 소요되는 실행 시간을 Peregrine의 1주일 이상에서 DwarvesGraph로 5시간 이내로 단축시켰다.
- Patents 그래프의 5-Motif 패턴에서 DwarvesGraph는 16개 스레드를 사용해 15.11배의 성능 향상을 달성했으며, 거의 선형 확장성을 보였다.
- MiCo 그래프에서 지지도 수준 10K로 빈번한 부분 그래프 마이닝을 수행한 결과, DwarvesGraph는 AutomineInHouse 대비 최대 70배의 성능 향상을 기록했다.
- 복잡한 레이블 제약 조건이 있는 경우, DwarvesGraph는 대규모 그래프에서 Peregrine를 최대 12배 빠르게 하였으며, 실행 시간을 12시간 이상에서 5분 이내로 단축시켰다.
- 컴파일 오버헤드는 극히 미미하여, 크기 6 패턴 112개에 대해서도 300ms 미만이었으며, 인터랙티브 워크로드에 실용적이다.
- 정확하지 않은 비용 모델은 분해되지 않은 시스템보다도 성능이 열 劣화될 수 있음을 확인하였으며, 이는 정확한 비용 추정이 분해 전략 선택에 있어 결정적인 역할을 한다는 점을 입증한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.