There seems to be an abundance of boilerplate patterns in MapReduce: * Write a class extending Map (1), implementing Mapper (2), with a map method (3) * Write a class extending Reduce (4), implementing Reducer (5), with a reduce method (6)
Could we achieve the same behavior with a single Job interface requiring map() and reduce() methods?
