Pular para o conteúdo principal

Idempotência

A Iara Data utiliza chaves de idempotência para prevenir operações duplicadas. Isso é essencial para a integridade dos dados — se uma requisição for enviada duas vezes (por exemplo, devido a uma retentativa de rede), apenas a primeira é executada.

Como Funciona

Inclua um cabeçalho Idempotency-Key em todas as requisições de mutação (POST, PUT, PATCH, DELETE):

curl -X POST https://lake.iaradata.com/api/v1/ingest/metrics \
-H "Authorization: Bearer YOUR_KEY" \
-H "Idempotency-Key: unique-uuid-12345" \
-H "Content-Type: application/json" \
-d '{"table": "sales", "rows": [...]}'

Comportamento

CenárioO Que Acontece
Primeira requisição com chave abc123A requisição é executada normalmente, o resultado é armazenado em cache
Segunda requisição com a mesma chave abc123Retorna o resultado em cache sem reexecutar
Chave diferente xyz789Nova requisição é executada normalmente

Explorador de Idempotência

Administradores podem consultar respostas idempotentes armazenadas em cache em ConfiguraçõesExplorador de Idempotência.

Captura de tela do Explorador de Idempotência mostrando a barra de filtros e a lista de respostas em cache

Filtros

FiltroDescrição
ChaveBuscar por chave de idempotência
MétodoGET, POST, PUT, PATCH, DELETE
CaminhoPrefixo do caminho da URL
Código de StatusCódigo de status HTTP da resposta
DesdeMostrar apenas entradas após uma data

Visualização Detalhada

Clique em qualquer entrada para ver:

  • Chave — A chave de idempotência
  • Método e Caminho — O endpoint da requisição
  • Hash do Corpo — Hash do corpo da requisição
  • Status — Código de status da resposta
  • Resposta Completa — O corpo da resposta em cache
  • Timestamp — Quando foi armazenado em cache

Reprocessar

Administradores podem clicar em Reprocessar para reexecutar uma requisição em cache. Isso é útil para depuração ou para tentar novamente após uma correção.

info

Boa prática: Use UUIDs ou chaves determinísticas para idempotência. Por exemplo, ingest-{fileHash}-{timestamp} garante que o mesmo arquivo não seja ingerido duas vezes.