Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

BatchDeleteItem

Modo de foco
BatchDeleteItem - AWS AppSync GraphQL

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

O documento de mapeamento de BatchDeleteItem solicitações permite que você peça ao AWS AppSync resolvedor do DynamoDB que faça uma BatchWriteItem solicitação ao DynamoDB para excluir vários itens, potencialmente em várias tabelas. Para esse modelo de solicitação, você deve especificar o seguinte:

  • Os nomes da tabela da qual excluir os itens

  • As chaves dos itens a serem excluídas de cada tabela

Os limites BatchWriteItem do DynamoDB se aplicam e nenhuma expressão de condição pode ser fornecida.

O documento de mapeamento BatchDeleteItem possui a seguinte estrutura:

{ "version" : "2018-05-29", "operation" : "BatchDeleteItem", "tables" : { "table1": [ ## Item to delete Key { "foo" : ... typed value, "bar" : ... typed value }, ## Item2 to delete Key { "foo" : ... typed value, "bar" : ... typed value }], "table2": [ ## Item3 to delete Key { "foo" : ... typed value, "bar" : ... typed value }, ## Item4 to delete Key { "foo" : ... typed value, "bar" : ... typed value }], } }

Os campos são definidos da seguinte forma:

BatchDeleteItem campos

version

A versão de definição do modelo. Somente 2018-05-29 é suportado. Este valor é obrigatório.

operation

A operação do DynamoDB para execução. Para executar a operação BatchDeleteItem do DynamoDB, ela deve ser definida como BatchDeleteItem. Este valor é obrigatório.

tables

As tabelas do DynamoDB das quais excluir os itens. Cada tabela é uma lista de chaves do DynamoDB representando a chave primária dos itens a serem excluídos. Os itens do DynamoDB podem ter uma única chave de hash ou uma chave de hash e uma chave de classificação, dependendo da estrutura da tabela. Para obter mais informações sobre como especificar um "valor digitado", consulte Sistema de tipo (Mapeamento de solicitação). Pelo menos uma tabela deve ser fornecida. O valor tables é obrigatório.

version

A versão de definição do modelo. Somente 2018-05-29 é suportado. Este valor é obrigatório.

operation

A operação do DynamoDB para execução. Para executar a operação BatchDeleteItem do DynamoDB, ela deve ser definida como BatchDeleteItem. Este valor é obrigatório.

tables

As tabelas do DynamoDB das quais excluir os itens. Cada tabela é uma lista de chaves do DynamoDB representando a chave primária dos itens a serem excluídos. Os itens do DynamoDB podem ter uma única chave de hash ou uma chave de hash e uma chave de classificação, dependendo da estrutura da tabela. Para obter mais informações sobre como especificar um "valor digitado", consulte Sistema de tipo (Mapeamento de solicitação). Pelo menos uma tabela deve ser fornecida. O valor tables é obrigatório.

Informações importantes:

  • Ao contrário da operação DeleteItem, o item totalmente excluído não é retornado na resposta. Somente a chave passada é retornada.

  • Se um item não tiver sido excluído da tabela, um elemento nulo aparecerá no bloco de dados dessa tabela.

  • Os resultados de invocação são classificados por tabela, com base na ordem em que foram fornecidos dentro do modelo de mapeamento de solicitação.

  • Cada comando Delete dentro de um BatchDeleteItem é atômico. No entanto, um lote pode ser parcialmente processado. Se um lote for parcialmente processado devido a um erro, as chaves não processadas serão retornadas como parte do resultado da chamada dentro do bloco unprocessedKeys.

  • O BatchDeleteItem é limitado a 25 chaves.

  • Essa operação não é compatível quando usada com detecção de conflitos. Usar ambos ao mesmo tempo pode gerar um erro.

Para o seguinte exemplo do modelo de mapeamento de solicitação:

{ "version": "2018-05-29", "operation": "BatchDeleteItem", "tables": { "authors": [ { "author_id": { "S": "a1" } }, ], "posts": [ { "author_id": { "S": "a1" }, "post_id": { "S": "p2" } } ], } }

O resultado de invocação disponível em $ctx.result é o seguinte:

{ "data": { "authors": [null], "posts": [ # Was deleted { "author_id": "a1", "post_id": "p2" } ] }, "unprocessedKeys": { "authors": [ # This key was not processed due to an error { "author_id": "a1" } ], "posts": [] } }

O $ctx.error contém detalhes sobre o erro. As chaves data, unprocessedKeys e todas as chaves de tabela fornecidas no modelo de mapeamento de solicitação estão presentes no resultado da invocação. Os itens que foram excluídos estão presentes no bloco data. Itens que não foram processados são marcados como nulos no bloco de dados e colocados dentro do bloco unprocessedKeys.

Para obter um exemplo mais completo, siga o tutorial do DynamoDB Batch aqui AppSync Tutorial: resolvedores de lotes do DynamoDB.

Nesta página

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.