Mining maximal cliques from a large graph using MapReduce

Journal of Parallel and Distributed Computing | , Vol 79: pp. 104-114

PDF | PDF | Publication | Publication | Publication | Publication | Publication

We consider Maximal Clique Enumeration (MCE) from a large graph. A maximal clique is perhaps the most fundamental dense substructure in a graph, and MCE is an important tool to discover densely connected subgraphs, with numerous applications to data mining on web graphs, social networks, and biological networks. While effective sequential methods for MCE are known, scalable parallel methods for MCE are still lacking.We present a new parallel algorithm for MCE, Parallel Enumeration of Cliques using Ordering ( PECO ), designed for the MapReduce framework. Unlike previous works, which required a post-processing step to remove duplicate and non-maximal cliques, PECO enumerates only maximal cliques with no duplicates. The key technical ingredient is a total ordering of the vertices of the graph which is used in a novel way to achieve a load balanced distribution of work, and to eliminate redundant work among processors. We implemented PECO on Hadoop MapReduce, and our experiments on a cluster show that the algorithm can effectively process a variety of large real-world graphs with millions of vertices and tens of millions of maximal cliques, and scales well with the degree of available parallelism. Scalable method for enumerating maximal cliques in a graph using MapReduce.Effective solution to load balancing.Experimental evaluation of our solution on large real world graphs.Outperforms previous MapReduce solutions by orders of magnitude.