It would be good to recognize that Hadoop is a Java implementation of a MapReduce framework. There are other MapReduce framework implementations out there, written in other languages - for C/C++, Sector/Sphere http://sector.sourceforge.net/ - for Python/Erlang, Disco http://discoproject.org/ I'm sure there are others.
To respond to Ricky (below), I doubt that Google (who wrote the MapReduce paper), implemented their MapReduce in Java. So the question may be, why is Hadoop (which implements MapReduce as described in that paper) the most popular MapReduce framework in the wild, even though it was not the first, nor the most efficient? Cheers Mike On Wed, Oct 13, 2010 at 00:57, Ricky Ho <[email protected]> wrote: > Is it easier if we change the question to : "Why does Java people create > Hadoop > before C++ people ?" > I agree that for framework like Hadoop, execution efficiency is at a higher > priority than developer productivity. And if the user can use any language to > write map and reduce function (like Hadoop streaming), then we should use the > most efficient language to write the core framework. > But again, don't forget the dynamics. It is not about which language is the > most efficient. It is about within the group of parallel computing experts > who > is willing to spend time in Open source, what language are they more familiar > with (or passionate about).
