If you have alot of data, and network IO is a big issue, you'll want to use something like hadoop (or disco) becuase they come with an integrated distributed file system and they preserve data locality.
If you don't have that much data, MR on redis is fine
If you don't have that much data, MR on redis is fine