QFrag: Distributed graph search via subgraph isomorphism

Research output: Chapter in Book/Report/Conference proceedingConference contribution

5 Citations (Scopus)


This paper introduces QFrag, a distributed system for graph search on top of bulk synchronous processing (BSP) systems such as MapReduce and Spark. Searching for patterns in graphs is an important and computationally complex problem. Most current distributed search systems scale to graphs that do not fit in main memory by partitioning the input graph. For analytical queries, however, this approach entails running expensive distributed joins on large intermediate data. In this paper we explore an alternative approach: replicating the input graph and running independent parallel instances of a sequential graph search algorithm. In principle, this approach leads us to an embarrassingly parallel problem, since workers can complete their tasks in parallel without coordination. However, the skew present in natural graphs makes this problem a deceitfully parallel one, i.e., an embarrassingly parallel problem with poor load balancing. We therefore introduce a task fragmentation technique that avoids stragglers but at the same time minimizes coordination. Our evaluation shows that QFrag outperforms BSP-based systems by orders of magnitude, and performs similar to asynchronous MPI-based systems on simple queries. Furthermore, it is able to run computationally complex analytical queries that other systems are unable to handle.

Original languageEnglish
Title of host publicationSoCC 2017 - Proceedings of the 2017 Symposium on Cloud Computing
PublisherAssociation for Computing Machinery, Inc
Number of pages15
ISBN (Electronic)9781450350280
Publication statusPublished - 24 Sep 2017
Event2017 Symposium on Cloud Computing, SoCC 2017 - Santa Clara, United States
Duration: 24 Sep 201727 Sep 2017


Other2017 Symposium on Cloud Computing, SoCC 2017
CountryUnited States
CitySanta Clara



  • Bulk synchronous processing
  • Graph search
  • Load balancing

ASJC Scopus subject areas

  • Computational Theory and Mathematics
  • Theoretical Computer Science

Cite this

Serafini, M., Morales, G., & Siganos, G. (2017). QFrag: Distributed graph search via subgraph isomorphism. In SoCC 2017 - Proceedings of the 2017 Symposium on Cloud Computing (pp. 214-228). Association for Computing Machinery, Inc. https://doi.org/10.1145/3127479.3131625