Proceedings of the VLDB Endowment · 2012 · 1.7K citations · 33 references
ComputingComputer EngineeringComputer ScienceDistributed SystemsFault ToleranceFault-tolerant ComputingData LocalityData ParallelismDistributed ComputingDistributed Data ProcessingFault-tolerant Parallel AlgorithmsConsistency GuaranteesData ConsistencyFault Tolerance MechanismsLarge-scale Data ProcessingMapreduceNetwork LatencyNetwork Latency MitigationNetwork Latency Reduction
High‑level data‑parallel frameworks such as MapReduce simplify large‑scale data processing but poorly support many data‑mining and machine‑learning algorithms, leading to inefficient learning systems. This work extends the GraphLab abstraction to a distributed setting while preserving strong data‑consistency guarantees. We add distributed extensions—including pipelined locking, data versioning, and Chandy‑Lamport snapshot fault tolerance—to GraphLab to reduce network congestion, mitigate latency, and enable efficient parallel execution. On Amazon EC2, the distributed GraphLab implementation achieves 1–2 orders of magnitude speedup over Hadoop‑based systems.
While high-level data parallel frameworks, like MapReduce, simplify the design and implementation of large-scale data processing systems, they do not naturally or efficiently support many important data mining and machine learning algorithms and can lead to inefficient learning systems. To help fill this critical void, we introduced the GraphLab abstraction which naturally expresses asynchronous, dynamic, graph-parallel computation while ensuring data consistency and achieving a high degree of parallel performance in the shared-memory setting. In this paper, we extend the GraphLab framework to the substantially more challenging distributed setting while preserving strong data consistency guarantees. We develop graph based extensions to pipelined locking and data versioning to reduce network congestion and mitigate the effect of network latency. We also introduce fault tolerance to the GraphLab abstraction using the classic Chandy-Lamport snapshot algorithm and demonstrate how it can be easily implemented by exploiting the GraphLab abstraction itself. Finally, we evaluate our distributed implementation of the GraphLab abstraction on a large Amazon EC2 deployment and show 1-2 orders of magnitude performance gains over Hadoop-based implementations.
33
Sanjay Ghemawat · Communications of the ACM · 2008 · 18.5K citations · Full text
The PageRank Citation Ranking : Bringing Order to the Web
Lawrence M. Page, Sergey Brin, Rajeev Motwani et al. · 1999 · 12.7K citations
Bradley Efron, Trevor Hastie, Iain M. Johnstone et al. · The Annals of Statistics · 2004 · 9.5K citations · Full text
Spark: cluster computing with working sets
Matei Zaharia, Mosharaf Chowdhury, Michael J. Franklin et al. · 2010 · 4.2K citations
Grzegorz Malewicz, Matthew H. Austern, Aart J. C. Bik et al. · 2010 · 3.5K citations