Tuesday, February 19, 2008

Some references for MapReduce(from Wikipedia)

Papers
"MapReduce: Simplified Data Processing on Large Clusters" — paper by Jeffrey Dean and Sanjay Ghemawat; from Google Labs
"Interpreting the Data: Parallel Analysis with Sawzall" — paper by Rob Pike, Sean Dorward, Robert Griesemer, Sean Quinlan; from Google Labs
"Google's MapReduce Programming Model -- Revisited" — paper by Ralf Lammel; from Microsoft
"Map-Reduce-Merge: Simplified Relational Data Processing on Large Clusters" — paper by Hung-Chih Yang, Ali Dasdan, Ruey-Lung Hsiao, and D. Stott Parker; from Yahoo and UCLA; published in Proc. of ACM SIGMOD, pp. 1029--1040, 2007. (This paper shows how to extend MapReduce for relational data processing.)
FLuX: the Fault-tolerant, Load Balancing eXchange operator from UC Berkeley provides an integration of partitioned parallelism with process pairs. This results in a more pipelined approach than Google's MapReduce with instantaneous failover, but with additional implementation cost.

Articles
"How Google Works - Reducing Complexity" — article from Baseline magazine
"Can Your Programming Language Do This?" — article from the Joel on Software weblog
Nutch MapReduce — article about MapReduce in Nutch from Tom White's weblog
Cat MapReduce — article about MapReduce in Cat from the Cat project wiki.
"Simple Map Reduce in Ruby" - article about using SimpleMapReduce on Ruby's Rinda which uses DrbRuby
"MapReduce: A major step backwards" - column about advances in database technology compared to MapReduce.

Software
Hadoop — open source MapReduce implementation from Apache
IBM MapReduce Tools for Eclipse — a plug-in that supports the creation of MapReduce applications within Eclipse.
QtConcurrent Open Source C++ MapReduce (non-distributed) implementation from Trolltech
Skynet Ruby Map/Reduce Framework
Retrieved from "http://en.wikipedia.org/wiki/MapReduce"

No comments: