Context-aware MapReduce for Geo-distributed Big Data