Lý do chính để sử dụng MapReduce trên các truy vấn đơn giản hơn hoặc truyền thống hơn là nó chỉ có thể thực hiện những việc (tức là tổng hợp) mà các truy vấn đơn giản không làm được.
Khi bạn cần tổng hợp, có hai tùy chọn sử dụng MongoDB:MapReduce và lệnh nhóm. Lệnh nhóm tương tự như "group by" của SQL và bị hạn chế ở chỗ nó phải trả về tất cả các kết quả của nó trong một phản hồi cơ sở dữ liệu duy nhất. Điều đó có nghĩa là nhóm chỉ có thể được sử dụng khi bạn có ít hơn 4MB kết quả. Mặt khác, MapReduce có thể làm bất cứ điều gì mà một "nhóm theo" có thể, nhưng xuất kết quả cho một bộ sưu tập mới để kết quả có thể lớn khi cần thiết.
Ngoài ra, sự song song đang đến, vì vậy rất tốt để có một số thực hành :)