Distributed socialite: A datalog-based language for large-scale graph analysis

J Seo, J Park, J Shin, MS Lam - Proceedings of the VLDB Endowment, 2013 - dl.acm.org
Proceedings of the VLDB Endowment, 2013dl.acm.org
Large-scale graph analysis is becoming important with the rise of world-wide social network
services. Recently in SociaLite, we proposed extensions to Datalog to efficiently and
succinctly implement graph analysis programs on sequential machines. This paper
describes novel extensions and optimizations of SociaLite for parallel and distributed
executions to support large-scale graph analysis. With distributed SociaLite, programmers
simply annotate how data are to be distributed, then the necessary communication is …
Large-scale graph analysis is becoming important with the rise of world-wide social network services. Recently in SociaLite, we proposed extensions to Datalog to efficiently and succinctly implement graph analysis programs on sequential machines. This paper describes novel extensions and optimizations of SociaLite for parallel and distributed executions to support large-scale graph analysis.
With distributed SociaLite, programmers simply annotate how data are to be distributed, then the necessary communication is automatically inferred to generate parallel code for cluster of multi-core machines. It optimizes the evaluation of recursive monotone aggregate functions using a delta stepping technique. In addition, approximate computation is supported in SociaLite, allowing programmers to trade off accuracy for less time and space.
We evaluated SociaLite with six core graph algorithms used in many social network analyses. Our experiment with 64 Amazon EC2 8-core instances shows that SociaLite programs performed within a factor of two with respect to ideal weak scaling. Compared to optimized Giraph, an open-source alternative of Pregel, SociaLite programs are 4 to 12 times faster across benchmark algorithms, and 22 times more succinct on average.
As a declarative query language, SociaLite, with the help of a compiler that generates efficient parallel and approximate code, can be used easily to create many social apps that operate on large-scale distributed graphs.
ACM Digital Library
以上显示的是最相近的搜索结果。 查看全部搜索结果