2011
DOI: 10.1007/978-3-642-23397-5_5
|View full text |Cite
|
Sign up to set email alerts
|

Towards Systematic Parallel Programming over MapReduce

Abstract: Abstract. MapReduce is a useful and popular programming model for data-intensive distributed parallel computing. But it is still a challenge to develop parallel programs with MapReduce systematically, since it is usually not easy to derive a proper divide-and-conquer algorithm that matches MapReduce. In this paper, we propose a homomorphism-based framework named Screwdriver for systematic parallel programming with MapReduce, making use of the program calculation theory of list homomorphisms. Screwdriver is imp… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
17
0

Year Published

2012
2012
2021
2021

Publication Types

Select...
4
3

Relationship

3
4

Authors

Journals

citations
Cited by 20 publications
(17 citation statements)
references
References 14 publications
0
17
0
Order By: Relevance
“…The research on parallel skeletons [9], [15], [18] and list homomorphisms [23] illustrates a systematic and constructive way to high-level parallel programming, by which this work was inspired. In this paper, we have described how to implement and use the two parallel skeletons scan and accumulate, in MapReduce.…”
Section: Resultsmentioning
confidence: 99%
See 3 more Smart Citations
“…The research on parallel skeletons [9], [15], [18] and list homomorphisms [23] illustrates a systematic and constructive way to high-level parallel programming, by which this work was inspired. In this paper, we have described how to implement and use the two parallel skeletons scan and accumulate, in MapReduce.…”
Section: Resultsmentioning
confidence: 99%
“…An input list is given as [11,15,8,9,20,25,12,23], the initial value of parameter c = −∞, and the list is split to two (with the offset 0 and 10, respectively). The processing is represented in the following tabular form, step by step.…”
Section: An Examplementioning
confidence: 99%
See 2 more Smart Citations
“…The third homomorphism theorem states that if a function can be written both as a left fold and a right fold, then it can also be evaluated in a divide-and-conquer manner [9]. This theorem has been widely used for parallelism [2,6,8,11,19,24,26]. The majority of this work enables suitable automation and derivation of efficient parallel implementations.…”
Section: Related Workmentioning
confidence: 99%