Map Reduce: Là một mô hình lập trình được đề xuất trong các ngôn ngữ lập trình hàm như Lisp, ML. Một trong những tính năng nổi bật của các ngôn ngữ lập trình hàm là các higher-order function. Higher-order function là dạng function mà chấp nhận một function khác như là tham số của nó.