Este guia fornece detalhes sobre como o faturamento do DynamoDB funciona para backups. Analisaremos os vários componentes que contribuem para o custo geral, fornecendo explicações claras e exemplos práticos.
O DynamoDB oferece backups sob demanda e para um ponto no tempo (PITR) para ajudar a proteger os dados do DynamoDB de eventos de desastre e oferece arquivamento de dados para retenção de longo prazo.
Como funciona
Os backups sob demanda do DynamoDB são cobrados mensalmente. Se você fizer um backup em um determinado dia do mês, verá uma única cobrança por esse backup calculada para os dias restantes do mês (exemplo: ao criar um backup no dia 27, você só receberá cobrança pelos poucos dias restantes desse mês, aplicada como uma única cobrança no dia 27).
Se você retiver os backups feitos anteriormente nos meses subsequentes, sempre verá uma cobrança mensal completa por esse backup aplicada no primeiro dia. Se o backup for removido antes do final do mês, as cobranças serão ajustadas com base no uso real.
Por exemplo, se você tiver criado um backup em 27 de julho e ele for mantido até o mês de agosto, você verá as seguintes cobranças por esse backup:
-
Uma cobrança em 27 de julho pelos dias restantes de julho.
-
Uma cobrança em 1.º de agosto para todo o mês de agosto.
-
Uma cobrança no dia 1.º de cada mês subsequente em que o backup existir.
-
Se o backup for excluído no dia 15 do mês seguinte, as cobranças desse backup serão ajustadas para apenas os 15 dias em que estava presente, ainda aplicadas no dia 1.º.
Quando os backups são mantidos para tabelas do DynamoDB, você pode observar que a despesa com a métrica de uso DynamoDB (Region)-TimedBackupStorage-ByteHrs
parece anormalmente alta no primeiro dia do mês. Além disso, se você verificar essa métrica no início de um novo mês e compará-la com os ciclos de faturamento anteriores, poderá observar um aumento aparentemente grande no uso. Isso faz parte do design. No primeiro dia de cada mês, todos os backups existentes do DynamoDB terão cobranças de uso do mês inteiro aplicadas. Todos os backups do DynamoDB removidos durante o mês terão suas despesas de uso rateadas para refletir o uso real. Por isso, você poderá ver a cobrança (aplicada no dia 1.º) diminuir ao longo do mês. Isso ocorre porque as políticas de retenção aplicam expirações ou exclusões manuais aos backups transferidos. Isso será examinado em um cenário abaixo.
Exemplo de faturamento de backup do DynamoDB
Veja um exemplo do que você pode ver no Explorador de Custos no início do mês:

Observe que 1.º de fevereiro parece ter um pico bem maior em relação aos meses anteriores. Vamos explicar por que isso ocorre.
Na página de preços do DynamoDB
“O tamanho total do armazenamento de backup cobrado a cada mês é a soma de todos os backups de tabelas do DynamoDB. O DynamoDB monitora o tamanho dos backups sob demanda continuamente durante todo o mês para determinar as cobranças de backup”.
Isso explica por que a fatura mostra consistentemente um grande aumento no uso no primeiro dia de cada mês. Todos os backups existentes que entrarem em um novo mês terão as cobranças de um mês inteiro aplicadas ao primeiro. Em outras palavras, se você começar o mês com 300 backups do DynamoDB, verá as cobranças de uso de um mês inteiro aplicadas no primeiro dia do mês para todos os 300 backups.
Em contraposição, qualquer novo backup feito ao longo do mês mostrará um aumento na cobrança desse backup no dia em que ele for feito, pois ele será cobrado pelo restante do mês.
Por que o uso do mês atual parece ser muito maior no primeiro mês do que no mês anterior e o que acontece se eu remover os backups?
Para responder a essa importante pergunta em duas partes, vamos configurar um cenário de exemplo usando as seguintes informações:
-
Duração do mês: 30 dias
-
Frequência de backup do DynamoDB: 10/dia, 300/mês
-
Política de retenção de backup do DynamoDB: 30 dias
-
Custo por backup do DynamoDB: USD 2/dia, USD 60 /mês
-
Total do 1.º dia do mês anterior (
TimedBackupStorage-ByteHrs
, verificado no 1.º dia do mês atual): USD 9.300 -
Total do mês anterior (
TimedBackupStorage-ByteHrs
): USD 18.600 -
Total do 1.º dia do mês atual (
TimedBackupStorage-ByteHrs
, verificado no 1.º dia): USD 18.000 -
Mudanças no uso do DynamoDB mês a mês: nenhuma
Usando as informações acima, podemos ver que 300 backups foram criados no mês anterior com uma política de mantê-los por 30 dias. No primeiro dia de um novo mês, todos esses backups ainda permanecem, pois ainda não atingiram o fim do período de recuperação. No entanto, a cada dia que passa, os conjuntos de backups mais antigos começarão a ser retirados, conforme mostrado aqui:
Novo mês | Dia 1 | Dia 2 | Dia 3 | Dia 4 | Dia 5 |
---|---|---|---|---|---|
Total de backups transferidos do mês anterior | 300 | 290 | 280 | 270 | 260 |
-
No primeiro dia, podemos ver 300 backups no valor de USD 60/mês por backup, totalizando USD 18.000 de
TimedBackupStorage-ByteHrs
aplicados. Isso contrasta com o mês anterior, no qual o total do mês inteiro foi de USD 18.600. -
No dia 2, 10 desses backups expirarão e serão retirados. Quando isso ocorrer, a cobrança aplicada por esses backups será ajustada para o uso real em vez do uso presumido. Isso faz esses 10 backups, anteriormente com uma cobrança de USD 600 (10 backups x 30 dias) aplicada no primeiro dia, serem ajustados para USD 20 (10 backups x 1 dia).
-
No dia seguinte, o próximo bloco de 10 expirará e será retirado, mudando seu uso de 30 dias para 2 dias, o que reduz a cobrança para USD 40 (10 backups x 2 dias).
A cada dia que passa, veremos que o pico “maior do que o do mês anterior” começa a diminuir. Se ampliarmos isso para abranger o mês inteiro, observaremos o seguinte:
300 backups em blocos de 10 | 1.º | 10.º | 20.º | 30.º |
---|---|---|---|---|
Bloco 1 | USD 600 | USD 20 | USD 20 | USD 20 |
Bloco 2 | USD 600 | USD 40 | USD 40 | USD 40 |
Bloco 3 | USD 600 | USD 60 | USD 60 | USD 60 |
Bloco 4 | USD 600 | USD 80 | USD 80 | USD 80 |
Bloco 5 | USD 600 | 100 USD | 100 USD | 100 USD |
Bloco 6 | USD 600 | USD 120 | USD 120 | USD 120 |
Bloco 7 | USD 600 | USD 140 | USD 140 | USD 140 |
Bloco 8 | USD 600 | USD 160 | USD 160 | USD 160 |
Bloco 9 | USD 600 | USD 180 | USD 180 | USD 180 |
Bloco 10 | USD 600 | USD 600 | 200 USD | 200 USD |
Bloco 11 | USD 600 | USD 600 | USD 220 | USD 220 |
Bloco 12 | USD 600 | USD 600 | USD 240 | USD 240 |
Bloco 13 | USD 600 | USD 600 | USD 260 | USD 260 |
Bloco 14 | USD 600 | USD 600 | USD 280 | USD 280 |
Bloco 15 | USD 600 | USD 600 | $300 | $300 |
Bloco 16 | USD 600 | USD 600 | USD 320 | USD 320 |
Bloco 17 | USD 600 | USD 600 | USD 340 | USD 340 |
Bloco 18 | USD 600 | USD 600 | USD 360 | USD 360 |
Bloco 19 | USD 600 | USD 600 | USD 380 | USD 380 |
Bloco 20 | USD 600 | USD 600 | USD 600 | 400 USD |
Bloco 21 | USD 600 | USD 600 | USD 600 | USD 420 |
Bloco 22 | USD 600 | USD 600 | USD 600 | USD 440 |
Bloco 23 | USD 600 | USD 600 | USD 600 | USD 460 |
Bloco 24 | USD 600 | USD 600 | USD 600 | USD 480 |
Bloco 25 | USD 600 | USD 600 | USD 600 | USD 500 |
Bloco 26 | USD 600 | USD 600 | USD 600 | USD 520 |
Bloco 27 | USD 600 | USD 600 | USD 600 | USD 540 |
Bloco 28 | USD 600 | USD 600 | USD 600 | USD 560 |
Bloco 29 | USD 600 | USD 600 | USD 600 | USD 580 |
Bloco 30 | USD 600 | USD 600 | USD 600 | USD 600 |
Total do 1.º dia do mês (USD) | USD 18.000 | USD 13.500 | USD 10.400 | USD 9.300 |
À medida que um novo bloco é retirado a cada dia, seu uso é ajustado para quantos dias existiu versus o valor total do mês. Por isso, até o final do mês, as cobranças observadas no dia 1.º terão caído dos USD 18.000 iniciais para os USD 9.300 esperados. Esse número, combinado com os backups recém-criados ao longo do mês (que terão uma tabela de faturamento semelhante à anterior, mas invertida), resultará em uma despesa mensal de acordo com os USD 18.600 do mês anterior.