Map-Reduce is a programming model that enables easy de- velopment of scalable parallel applications to process vast amounts of data on large clusters of commodity machines. Through a simple interface with two functions, map and re- duce, this model facilitates parallel implementation of many real-world tasks such as data processing for search engines and machine learning. However, this model does not directly support processing multiple related heterogeneous datasets. While processing relational data is a common need, this limitation causes dif- ficulties and/or ineciency when Map-Reduce is applied on relational operations like joins. We improve Map-Reduce into a new model called Map- Reduce-Merge. It adds to Map-Reduce a Merge phase that can eciently merge data already partitioned and sorted (or hashed) by map and reduce modules. We also demonstrate that this new model can express relational algebra operators as well as implement several join algorithms.