Quantos dados o DynamoDB consegue armazenar?

Efetivamente ilimitados. Uma tabela do DynamoDB não tem tamanho máximo e escala horizontalmente para qualquer número de itens e bytes. Os limites reais são por item (400 KB) e, somente em tabelas que têm um índice secundário local, 10 GB por coleção de itens (um valor de chave de partição). Tabelas sem LSI não têm limite de tamanho de partição.

Tamanho de tabela: sem teto

O DynamoDB espalha os dados por muitas partições físicas automaticamente conforme eles crescem. Não há tamanho máximo de tabela configurado — capacidade e armazenamento escalam conforme você escreve.

Os limites que de fato existem

  • 400 KB — tamanho máximo de um único item, medido em unidades binárias e contando tanto os nomes dos atributos quanto os valores (onde exatamente esse limite cai).
  • 10 GB — tamanho máximo de uma coleção de itens (todos os itens que compartilham um valor de chave de partição) apenas quando a tabela tem um índice secundário local (LSI). Sem um LSI, esse limite não se aplica.

O tamanho que você consegue medir não é o tamanho que você paga

A forma óbvia de responder "quanto eu estou armazenando?" é o DescribeTable, que retorna TableSizeBytes. Esse número é menor que a sua conta, por design. Da orientação de cobrança da AWS: "DynamoDB measures the size of your billable data by adding the raw byte size of your data plus a per-item storage overhead that depends on the features you have enabled", e "Storage usage values in the CUR will be higher compared with the storage values when using DescribeTable, because DescribeTable does not include the per-item storage overhead."

Isso bate com o que o motor reporta. Uma tabela contendo 40 itens de cerca de 3 KB cada voltou como TableSizeBytes: 120700, que é o conteúdo bruto e nada mais. O overhead é invisível pela API e aparece apenas no Cost and Usage Report.

Ou seja, a diferença entre os dois cresce com a quantidade de itens, não com o tamanho deles. Dez milhões de itens minúsculos pagam esse overhead dez milhões de vezes; os mesmos bytes empacotados em cem mil itens maiores o pagam cem mil vezes. Se a sua conta corre à frente do que o TableSizeBytes sugere, uma tabela larga de linhas pequenas é o motivo habitual.

Quanto custa o "sem teto"

O armazenamento é a parte tolerante. Uma tabela de 1 TB em us-east-1 são 1.024 GB a US$0,25 por GB-mês: $256 por mês, ou US$249,75 quando se aplica a franquia gratuita de 25 GB.

O tamanho do item é a parte intolerante, porque as escritas arredondam para cima a cada 1 KB. O mesmo um milhão de itens custa valores radicalmente diferentes para escrever, a US$0,625 por milhão de unidades de requisição de escrita on-demand:

Tamanho do itemUnidades de escrita cada1M de escritas (us-east-1, on-demand)
1 KB1US$0,63
100 KB100US$62,50
400 KB400US$250,00

Ou seja, a grandeza em torno da qual você projeta não é o tamanho da tabela, e sim o do item. Empurre blobs grandes para o S3 e mantenha o ponteiro no DynamoDB, e evite coleções de itens ilimitadas sob uma chave quente. Confira os seus próprios números na calculadora de preços.

Aprofunde-se

Leia coleções de itens do DynamoDB e como funcionam as chaves de partição do DynamoDB. Baixe o DynoTable para explorar tabelas grandes com eficiência.

Referências

Verificado pela última vez em 2026-07-13 contra a documentação oficial da AWS vinculada acima; cotas e preços reconferidos em 2026-07-28.

O número de TableSizeBytes foi medido em 2026-07-28 contra o DynamoDB Local 3.3.0 (amazon/dynamodb-local:latest) via @aws-sdk/client-dynamodb 3.1095.0. O DynamoDB Local não é o serviço, e nenhuma constante de overhead por item é inferida a partir dele.

Trabalhe com o DynamoDB sem o Console

Um cliente desktop rápido para DynamoDB que roda o SQL de verdade que o DynamoDB não consegue — JOINs, GROUP BY, agregações — com edição visual e um agente de IA com suas próprias chaves do Bedrock.

Teste grátis de 30 dias, sem cartão de crédito — depois o plano Grátis sem limite de tempo.