Menu Docs

Página inicial do DocsServiços Atlas App

APIs de agregação e CRUD

Nesta página

  • Visão geral
  • Operações CRUD
  • Operadores de Consulta
  • Operadores de atualização
  • Operações de gravação em massa
  • Opções de query
  • Agregação
  • Métodos de agregação
  • Disponibilidade do estágio do aggregation pipeline
  • Disponibilidade do operador de aggregation pipeline
  • Comandos de banco de dados
  • Disponibilidade de Comando do Banco de Dados

Esta página lista o suporte à fonte de dados MongoDB para comandos MongoDB, operadores, opções e estágios de agregação.

Para informações sobre como ler e escrever dados no MongoDB a partir de uma função, consulte Query MongoDB Atlas.

Para mais informações sobre recursos e limitações suportados, consulte Limitações de Serviço.

Observação

O suporte para uma operação pode depender se você está executando a operação como usuário do aplicativo ou como usuário do sistema.

  • Uma função de usuário é executada no contexto de um usuário específico do aplicativo e impõe permissões de acesso a dados e validação de esquema, o que torna algumas operações insustentáveis.

  • Uma função do sistema é executada como um usuário genérico do sistema e não está sujeita a regras ou validação de esquema. Algumas operações só estão disponíveis nas funções do sistema.

O Atlas App Services oferece suporte à maioria dos operadores de query para queries executadas em uma função de usuário. No entanto, alguns operadores de avaliação e todos os operadores geoespaciais e bitwise estão disponíveis somente em funções do sistema.

Operação
Função do usuário
Função do sistema
$eq
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Operação
Função do usuário
Função do sistema
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Operação
Função do usuário
Função do sistema
Sim
Sim
Sim
Sim
Sim
Sim
Operação
Função do usuário
Função do sistema
Sim
Sim
Sim
Sim
Operação
Função do usuário
Função do sistema
Sim
Sim
Não
Sim
Não
Sim
Não
Sim
Não
Sim
Não
Sim
Operação
Função do usuário
Função do sistema
Não
Sim
Não
Sim
Não
Sim
Não
Sim
Operação
Função do usuário
Função do sistema
Não
Sim
Não
Sim
Não
Sim
Não
Sim

O App Services oferece suporte à maioria dos operadores de atualização para queries que são executadas em uma função de usuário. No entanto, alguns operadores de atualização de array estão disponíveis somente em funções do sistema.

Operação
Função do usuário
Função do sistema
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Modificador
Função do usuário
Função do sistema
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Operador
Função do usuário
Função do sistema
Sim
Sim

Os serviços de aplicativos suportam operações de gravação em massa usando a mesma API que o driver do MongoDB Node.js.

Você define as operações em massa ordenadas chamando coleção.initializeOrderedBulkOp() e manipulando a OrderedBulkOperation objeto que ele retorna.

O App Services suporta os seguintes métodos do OrderedBulkOperation :

Operação
Função do usuário
Função do sistema
Sim
Sim
Sim
Sim
Sim
Sim

Você define operações em massa não ordenadas chamando collection.initializeUnorderedBulkOp() e manipulando a OrderedBulkOperation objeto que ele retorna.

O App Services suporta os seguintes métodos do UnorderedBulkOperation :

Operação
Função do usuário
Função do sistema
Sim
Sim
Sim
Sim
Sim
Sim

O App Services não oferece suporte à configuração das seguintes opções para qualquer operação CRUD em funções de usuário. Todas as opções de query estão disponíveis em funções do sistema.

Opção
Contexto do usuário
Contexto do sistema
Não
Sim
Não
Sim
Não
Sim

O Atlas App Services oferece suporte à agregação no nível do banco de dados e da coleção usando os seguintes comandos:

O App Services não oferece suporte aos seguintes estágios do aggregation pipeline quando você run an aggregation pipeline no contexto de um application user. Todos os estágios do aggregation pipeline estão disponíveis para o usuário do sistema, exceto $indexStats.

Estágio
Contexto do usuário
Contexto do sistema
Não
Sim
Não
Sim
Não
Sim
Não
Sim
Não
Sim
Não
Não
Sim
Sim
Não
Sim
Não
Sim

$search

Importante

O App Services $search executa as operações como um usuário do sistema e o impõe regras de nível de campo nos resultados de pesquisa retornados. Isso significa que um usuário pode pesquisar em um campo para o qual ele não tem acesso de leitura. Nesse caso, a pesquisa é baseada no campo especificado, mas nenhum documento retornado inclui o campo.

Observação

$$SEARCH_META disponibilidade variável

A variável de agregação $$SEARCH_META está disponível somente para funções que executam como sistema ou se o primeiro papel na coleção pesquisada tiver suas expressões apply_when e read configuradas para true.

Se nenhum desses dois cenários se aplicar, $$SEARCH_META será indefinido e a agregação falhará.

Sim
Sim
Sim
Sim

Observação

Por padrão, $merge e $out rotear toda a operação de agregação para o nó primário do cluster. Se você quiser forçar esses estágios a respeitar sua preferência de leitura de cluster configurada, defina a opção enforceReadPref como true.

O App Services oferece suporte a todos os operadores de pipeline de agregação quando você executa um aggregation pipeline no contexto do usuário do sistema .

O App Services oferece suporte a todos os operadores de pipeline em um contexto de aplicação usuário , exceto para os seguintes operadores:

o App Services não suporta quaisquer comandos do banco de dados nos SDKs do cliente ou funções. No entanto, você pode chamar um subconjunto limitado de comandos do banco de dados quando conectado a um cluster MongoDB por meio do protocolo de transferência de App Services.

Os comando de banco de dados a seguir são parcialmente suportados pelo protocolo de fio. As opções não suportadas para cada comando estão listadas abaixo.

Observação

Os aplicativos App Services não podem executar comandos no banco de dados do admin.

Comando
Opções não Suportadas
Opções específicas de App Services
  • hint

  • skip

  • batchSize

  • comment

  • maxScan

  • maxTimeMS

  • readConcern

  • max

  • min

  • returnKey

  • showRecordId

  • tailable

  • awaitData

  • oplogReplay

  • noCursorTimeout

  • allowPartialResults

  • collation

  • explain

  • allowDiskUse [1]

  • readConcern

  • collation

  • bypassDocumentValidation

  • hint

  • comment

  • writeConcern

  • enforceReadPref

  • limit

  • skip

  • hint

  • readConcern

  • writeConcern

  • bypassDocumentValidation

  • bypassDocumentValidation

  • collation

  • collation

[1] O App Services oferece suporte a allowDiskUse quando executados em uma Função ou Trigger com permissões no nível do sistema.
← Conectar a fontes de dados MongoDB