Programming model for processing large data sets with a parallel, distributed algorithm on a cluster