Skip to main content
QUICK REVIEW

[Paper Review] Partitioning Strategies for Load Balancing Subgraph-centric Distributed Graph Processing

Neel Choudhury, Ravikant Dindokar|arXiv (Cornell University)|Aug 18, 2015
Graph Theory and Algorithms24 references3 citations
TL;DR

This paper proposes three subgraph-centric partitioning strategies—flat, hierarchical, and adaptive—to improve load balancing in distributed graph processing. By optimizing component distribution across machines, the approach boosts CPU utilization by up to 8× and reduces makespan by up to 5× compared to default strategies, outperforming Apache Giraph in scalability and efficiency on power-law and spatio-planar graphs.

ABSTRACT

Distributed graph processing platforms have helped emerging application domains use commodity clusters and Clouds to analyze large graphs. Vertex-centric programming models like Google Pregel, and their subgraph-centric variants, specify data-parallel application logic for a single vertex or component that execute iteratively. The locality and balancing of components within partitions affects the performance of such platforms. We propose three partitioning strategies for a subgraph-centric model, and analyze their impact on CPU utilization, communication, iterations, and makespan. We analyze these using Breadth First Search and PageRank algorithms on powerlaw and spatio-planar graphs. They are validated on a commodity cluster using our GoFFish subgraph-centric platform, and compared against Apache Giraph vertex-centric platform. Our experiments show upto 8 times improvement in utilization resulting to upto 5 times improvement of overall makespan for flat and hierarchical partitioning over the default strategy due to improved machine utilization. Further, these also exhibit better horizontal scalability relative to Giraph.

Motivation & Objective

  • To address performance bottlenecks in distributed graph processing caused by poor load balancing and communication overhead.
  • To improve CPU utilization and reduce makespan in subgraph-centric graph processing platforms.
  • To evaluate partitioning strategies that enhance horizontal scalability and resource utilization on commodity clusters.
  • To compare subgraph-centric partitioning against vertex-centric models like Apache Giraph in real-world workloads.

Proposed method

  • Proposes flat partitioning, which divides the graph into subgraphs based on vertex degree and connectivity to balance work per machine.
  • Introduces hierarchical partitioning, which recursively subdivides large subgraphs to reduce load skew and improve load distribution.
  • Designs adaptive partitioning that dynamically reassigns subgraphs based on runtime performance metrics to maintain balance.
  • Employs the GoFFish platform to implement and evaluate subgraph-centric execution with iterative algorithms like BFS and PageRank.
  • Uses power-law and spatio-planar graphs to simulate real-world workloads and measure performance across CPU utilization, communication, iterations, and makespan.
  • Compares results against Apache Giraph’s vertex-centric model to assess scalability and efficiency improvements.

Experimental results

Research questions

  • RQ1How do different subgraph partitioning strategies affect CPU utilization in distributed graph processing?
  • RQ2To what extent can subgraph-centric partitioning reduce makespan compared to default and vertex-centric strategies?
  • RQ3How does the proposed partitioning improve horizontal scalability on commodity clusters?
  • RQ4What is the impact of partitioning on communication volume and iteration count in iterative graph algorithms?

Key findings

  • Flat and hierarchical partitioning improved CPU utilization by up to 8 times compared to the default strategy.
  • Makespan was reduced by up to 5 times using the proposed partitioning strategies over the default approach.
  • The subgraph-centric approach demonstrated better horizontal scalability than Apache Giraph across all tested graph types.
  • Breadth-First Search and PageRank workloads showed significant performance gains due to reduced load imbalance and communication overhead.
  • Adaptive partitioning maintained high load balance during execution, leading to consistent performance improvements.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.