- Aggregation >
- Aggregation Concepts
Aggregation Concepts¶
MongoDB provides the three approaches to aggregation, each with its own strengths and purposes for a given situation. This section describes these approaches and also describes behaviors and limitations specific to each approach. See also the chart that compares the approaches.
- Aggregation Pipeline
- The aggregation pipeline is a framework for performing aggregation
tasks, modeled on the concept of data processing pipelines. Using
this framework, MongoDB passes the documents of a single
collection through a pipeline. The pipeline transforms the
documents into aggregated results, and is accessed through the
aggregate
database command. - Map-Reduce
- Map-reduce is a generic multi-phase data aggregation modality for
processing quantities of data. MongoDB provides map-reduce with
the
mapReduce
database command. - Single Purpose Aggregation Operations
- MongoDB provides a collection of specific data aggregation operations to support a number of common data aggregation functions. These operations include returning counts of documents, distinct values of a field, and simple grouping operations.
- Aggregation Mechanics
- Details internal optimization operations, limits, support for sharded collections, and concurrency concerns.