Piccolo: Building Fast, Distributed Programs with Partitioned Tables
Cached
Download Links
| Citations: | 17 - 0 self |
BibTeX
@MISC{Power_piccolo:building,
author = {Russell Power and Jinyang Li},
title = {Piccolo: Building Fast, Distributed Programs with Partitioned Tables},
year = {}
}
OpenURL
Abstract
Piccolo is a new data-centric programming model for writing parallel in-memory applications in data centers. Unlike existing data-flow models, Piccolo allows computation running on different machines to share distributed, mutable state via a key-value table interface. Piccolo enables efficient application implementations. In particular, applications can specify locality policies to exploit the locality of shared state access and Piccolo’s run-time automatically resolves write-write conflicts using userdefined accumulation functions. Using Piccolo, we have implemented applications for several problem domains, including the PageRank algorithm, k-means clustering and a distributed crawler. Experiments using 100 Amazon EC2 instances and a 12 machine cluster show Piccolo to be faster than existing data flow models for many problems, while providing similar fault-tolerance guarantees and a convenient programming interface. 1







