Understanding Data Joins in MapReduce