Designing and implementing MapReduce algorithms for a variety of common data processing tasks