Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Execute aggregation pipelines em seus dados

Aggregation pipelines transform your documents into an aggregated set of results. In Atlas Charts, aggregation pipelines are commonly used to visualize new fields created from calculated results of pre-existing fields, but also have many other applications.

Para criar um pipeline de agregação:

  1. Na barra Query, insira um pipeline de agregação. Seu pipeline deve estar entre colchetes.

  2. (Opcional) Selecione Format para organizar a consulta da seguinte maneira:

    • Dividir a consulta em várias linhas

    • Recue a consulta de acordo com as convenções JSON

  3. (Condicional) Se você selecionou a opção Format, clique em Close quando terminar.

  4. Clique em Apply para executar seu pipeline.

O gráfico a seguir mostra os valores totais de venda de uma empresa de suprimentos de escritório, categorizados pelo local da loja. O gráfico utiliza o seguinte pipeline de agregação na barra Query:

[
{
$unwind: "$items"
},
{
$addFields: {
saleAmount: {
$multiply: [ "$items.price", "$items.quantity" ]
}
}
}
]

Esse pipeline de agregação processa os dados de coleta usando o seguinte pedido:

  1. The $unwind stage unwinds the items array and outputs a new document for each item in the array. Each element in the items array contains a single item sold during a transaction.

  2. The $addFields stage adds a new field to the documents called saleAmount. The $multiply expression sets the value of saleAmount to the product of items.price and items.quantity. You can see this new field highlighted in the following screenshot:

Exemplo de aggregation pipeline
clique para ampliar

Após os dados serem processados utilizando o pipeline, o gráfico exibe o Sum de todas as saleAmounts categorizadas por local da loja.

Se sua agregação for inválida, os gráficos exibirão o ícone na barra Query.

Clique na barra Query se ela ainda não estiver exibida para visualizar os detalhes de erro. O Charts exibe detalhes de erro para:

  • Erros do lado do cliente, como JSON malformado, e

  • Erros do lado do servidor, como MQL inválido ou estágios de pipeline não suportados.

Exemplo de erro de pipeline de agregação
clique para ampliar

Analise os detalhes do erro e ajuste seu funil de agregação de acordo.

  • Charts doesn't support the $lookup operator in aggregation queries. However, you can use this operator in Data Source pipelines. To learn more about how to use pipelines to pre-process data before it reaches the Chart Builder, see Create and Manage Charts Views.

  • Charts supports the $function operator only when you define the function body in a single line and wrap it in double quotes. To use this operator in your aggregation queries, you must use the following syntax:

    {
    $function: {
    body: "function(arg1, arg2, ...) { ... }",
    args: <array expression>,
    lang: "js"
    }
    }