Estágios e operadores de pipeline de agregação suportados
Esta página descreve os estágios e operadores do pipelinede agregação do MongoDB compatíveis com o Atlas Data Federation .
Observação
Por padrão, o Atlas Data Federation não retorna documentos em nenhuma ordem específica para consultas em Data Federations para armazenamentos de dados S3 . O Atlas Data Federation lê as partições simultaneamente e a ordem de resposta do armazenamento subjacente determina quais documentos o Atlas Data Federation retorna primeiro, a menos que você defina a ordem usando $sort
em sua consulta. Por exemplo, se você executar a mesma query findOne()
duas vezes, poderá ver documentos diferentes e, se usar $skip
, documentos diferentes poderão ser ignorados se $sort
não for usado na consulta.
Estágios de pipeline de agregação com e sem suporte
O Atlas Data Federation é compatível com todos os agregação pipeline stages , exceto para os seguintes:
Para os seguintes estágios nas query do Atlas Data Federation, o Atlas Data Federation introduz uma sintaxe alternativa, inclui uma ressalva ou se diferencia do servidor. Consulte a coluna Descrição para obter detalhes.
estágio do pipeline | Descrição | ||||||||
---|---|---|---|---|---|---|---|---|---|
Agrupa documentos de entrada pela expressão Por exemplo, o seguinte não é suportado:
| |||||||||
Executa uma ligação externa esquerda para uma coleção no mesmo banco de dados de dados. O Atlas Data Federation também fornece sintaxe para unir coleções de diferentes bancos de dados. Consulte $lookup para mais informações. | |||||||||
Filtra os documentos para passar apenas aqueles que correspondem às condições especificadas para a próxima etapa do pipeline. O Atlas Data Federation suporta $match . Observe que os atributos de partição para selecionar arquivos específicos no S3 são otimizados apenas para os seguintes operadores de pipeline de agregação: $eq, $gt, $lt, $ gte, $lte, $ne, $and, $or, $in . | |||||||||
Escreve os resultados do pipeline de agregação para uma coleção especificada. O Atlas Data Federation fornece sintaxe alternativa para o campo into obrigatório para permitir gravações em um Atlas cluster. Para saber mais, consulte $merge . | |||||||||
Pega os documentos retornados pelo aggregation pipeline e os grava em uma collection especificada. O Atlas Data Federation fornece sintaxe alternativa para gravar no S3 e no cluster do Atlas. Para usar $out para gravar em uma coleção em um banco de dados diferente no mesmo Atlas cluster, seu Atlas cluster deve estar na versão 5.0 do MongoDB ou posterior. Consulte | |||||||||
Seleciona aleatoriamente o número especificado de documentos de sua entrada. O Atlas Data Federation suporta $sample , mas não fornece uma amostra verdadeiramente aleatória e retorna o primeiro conjunto de documentos que encontra. | |||||||||
Ignora o número especificado de documentos que passam para o estágio e passa os documentos restantes para o próximo estágio no pipeline. O Atlas Data Federation suporta $skip , mas isso não reduz a verificação de dados porque o Data Federation acessa todas as partições que correspondem à sua query. |
Operadores de pipeline de agregação suportados
O Atlas Data Federation oferece suporte a todos os operadores de pipeline de agregação. No entanto, alguns operadores só estão disponíveis em queries sobre collections mapeadas para um armazenamento de dados do Atlas cluster. Os operadores de query geoespacial estão disponíveis somente nessas queries. Os seguintes operadores de query de avaliação também são restritos a queries em collections mapeadas para um armazenamento de dados do Atlas cluster:
estágio do pipeline | Descrição |
---|---|
Produz documentos na ordem do mais próximo para o mais distante de um ponto especificado . O Atlas Data Federation suporta Consulte Consultando Dados em Seu Cluster Atlas para mais informações. | |
Executa uma pesquisa recursiva em uma coleção. O Atlas Data Federation suporta
Consulte Consultando Dados em Seu Cluster Atlas para mais informações. | |
Executa uma Full Text Search no conteúdo dos campos abrangidos por um índice do Atlas Search. | |
Executa uma pesquisa de texto no conteúdo dos campos indexados com um índice de texto. | |
Passa uma string contendo uma expressão JavaScript ou uma função JavaScript completa para o sistema de query. |
Observação
O Atlas Data Federation não inclui um mecanismo JavaScript do lado do servidor. Portanto, o Atlas Data Federation não é compatível com operadores como $where, $function e $accumulator que exigem a ativação de scripts no lado do servidor .