Publication | Closed Access
Automatic optimization for MapReduce programs
177
Citations
21
References
2011
Year
Cluster ComputingEngineeringMapreduce ProgramComputer ArchitectureMap-reduceSoftware AnalysisData ScienceData IntegrationParallel ComputingAutomatic OptimizationJava CodeData ManagementHigh-performance Data AnalyticsComputer ScienceDistributed Query ProcessingData-intensive ComputingProgram AnalysisCloud ComputingParallel ProgrammingMapreduce ProgramsMassive Data ProcessingBig Data
The MapReduce distributed programming framework has become popular, despite evidence that current implementations are inefficient, requiring far more hardware than a traditional relational databases to complete similar tasks. MapReduce jobs are amenable to many traditional database query optimizations (B+Trees for selections, column-store-style techniques for projections, etc ), but existing systems do not apply them, substantially because free-form user code obscures the true data operation being performed. For example, a selection in SQL is easily detected, but a selection in a MapReduce program is embedded in Java code along with lots of other program logic. We could ask the programmer to provide explicit hints about the program's data semantics, but one of MapReduce's attractions is precisely that it does not ask the user for such information. This paper covers Manimal, which automatically analyzes MapReduce programs and applies appropriate data-aware optimizations, thereby requiring no additional help at all from the programmer. We show that Manimal successfully detects optimization opportunities across a range of data operations, and that it yields speedups of up to 1,121% on previously-written MapReduce programs.
| Year | Citations | |
|---|---|---|
Page 1
Page 1