Menu Docs
Página inicial do Docs
/ /

Map-Reduce

Observação

Pipeline de agregação como alternativa

A partir do MongoDB 5.0, o map-reduce foi descontinuado:

Para obter exemplos de alternativas de aggregation pipeline para map-reduce, consulte:

Você pode executar pipelines de agregação na IU para sistemas hospedados no MongoDB Atlas.

map-reduce é um paradigma de processamento de dados para condensar grandes volumes de dados em resultados agregados. Para executar operações de map-reduce, o MongoDB fornece o mapReduce comando de banco de dados.

Considere a seguinte operação map-reduce:

Diagrama da operação de map-reduce anotada.

O MongoDB aplica a fase de mapa a cada documento de entrada (os documentos da coleção que correspondem à condição de query). A função map emite pares de valores-chave. Para chaves que possuem vários valores, o MongoDB aplica a fase de redução, que coleta e condensa os dados e, em seguida, armazena os resultados em uma coleção. A saída da função de redução pode, opcionalmente, passar por uma função de finalização para processar ainda mais os resultados.

Todas as funções de map-reduce no MongoDB são JavaScript e executadas dentro do processo do mongod. As operações de map-reduce usam uma única coleção como entrada e podem aplicar classificação e limitação antes do estágio de mapa. mapReduce pode retornar resultados como um documento ou gravá-los em uma coleção.

Observação

A operação de map-reduce não é compatível com clusters do MongoDB Atlas Free e Flex.

As operações de map-reduce usam funções JavaScript personalizadas para mapear valores para uma chave. Se uma chave tiver vários valores, a operação os reduz para um único objeto. Uma função de mapa pode emitir vários pares de valores-chave ou nenhum. Uma função de finalização opcional pode fazer outras modificações nos resultados.

Uma operação de map-reduce pode gravar resultados em uma coleção ou devolvê-los embutidos. Se você gravar resultados em uma coleção, poderá executar operações subsequentes de map-reduce na mesma coleção de entrada que substituem, mesclam ou reduzem novos resultados com resultados anteriores. Consulte mapReduce e Execute Map-Reduce incremental para obter exemplos.

Ao retornar os resultados em linha, os documentos de resultado devem estar dentro do limite de tamanho de documento BSON de 16 mebibytes. Para mais limites e restrições, consulte mapReduce.

O MongoDB oferece suporte a operações de redução de mapa em coleções fragmentadas.

As visualizações não suportam operações de redução de mapa.

Voltar

SQL para agregação

Nesta página