Por que minha operação GetItem do Amazon DynamoDB não retorna os dados mais recentes, mesmo que o PutItem tenha sido bem-sucedido?

2 minuto de leitura
0

Quando eu gravo um registro em uma tabela, o PutItem retorna uma resposta HTTP 200 bem-sucedida. No entanto, quando tento buscar o item em uma solicitação de leitura, o Amazon DynamoDB não retorna o registro.

Resolução

Isso geralmente acontece quando você usa uma leitura final consistente para acessar um item imediatamente após gravá-lo em uma tabela. GetItem fornece uma leitura final consistente por padrão. Se você repetir sua solicitação de leitura após um curto período de tempo, a resposta retornará os dados mais recentes na tabela desse item.

Se quiser recuperar os dados mais recentes assim que a solicitação de gravação for bem-sucedida, defina o parâmetro ConsistentRead comoverdadeiro. Isso permite leituras altamente consistentes. Sobre leituras altamente consistentes:

  • Leituras altamente consistentes podem ter maior latência.
  • Leituras altamente consistentes não são compatíveis com índices secundários globais.
  • Leituras altamente consistentes exigem duas vezes mais throughput do que leituras finais consistentes. Isso significa que leituras altamente consistentes custam o dobro das leituras finais consistentes. Para mais informações, consulte Preços para capacidade provisionada ou Preços para capacidade sob demanda.

Para ver um exemplo de solicitação que usa leituras altamente consistentes, consulte Recuperar atributos do item.


Informações relacionadas

PutItem

Consistência de leitura

AWS OFICIAL
AWS OFICIALAtualizada há 2 anos