Uma Alternativa ao dynamodb-admin para DynamoDB Local e Ao Vivo

O dynamodb-admin é a GUI web gratuita, licenciada sob MIT, que a maioria dos desenvolvedores escolhe quando sobe o DynamoDB Local ou o LocalStack. Você o roda como um pequeno servidor Node (npm install -g dynamodb-admin), aponta para um endpoint e navega suas tabelas locais. Ele é excelente nesse único trabalho. Esta página é para quando você o superou — e quer um cliente que lide com tabelas locais e ao vivo da AWS, com filtragem, edição inline e um SQL Workbench. O DynoTable é um cliente desktop multiplataforma de DynamoDB construído em torno desse Workbench.

No que o dynamodb-admin é bom

O README do dynamodb-admin descreve isso claramente: uma "GUI para DynamoDB Local, dynalite, localstack etc." (README). É a ferramenta certa quando você está trabalhando contra um endpoint local:

  • Gratuito e open source (MIT), então não há nada para comprar e nada para licenciar (licença).
  • Zero atrito de instalaçãonpm install -g dynamodb-admin e você tem uma UI web em localhost:8001 (o --port padrão), apontada por padrão para http://localhost:8000 (README).
  • Uma imagem Docker — a imagem oficial aaronshaf/dynamodb-admin no Docker Hub cai direto num docker-compose ao lado do amazon/dynamodb-local. Ela lê as variáveis de ambiente HOST, PORT, BASE_PATH e DYNAMO_ENDPOINT (README), então se conecta limpinho numa stack de dev em containers.
  • Criar, navegar e editar tabelas através de uma interface web simples enquanto você desenvolve, sem tocar no AWS Console.

Por padrão ele define accessKeyId / secretAccessKey para os valores fictícios key e secret e a região para us-east-1 (README) — o que te diz exatamente para o que ele foi construído: o ciclo interno de desenvolvimento local.

O dynamodb-admin consegue conectar ao DynamoDB ao vivo da AWS?

Tecnicamente sim — e essa é a coisa mais comum que as pessoas tentam quando uma UI de admin só-local deixa de ser suficiente. Você sobrescreve o endpoint e fornece credenciais reais:

# Aponta o dynamodb-admin para uma região real em vez do localhost
AWS_REGION=eu-west-1 \
AWS_ACCESS_KEY_ID=AKIA... \
AWS_SECRET_ACCESS_KEY=... \
dynamodb-admin --dynamo-endpoint=https://dynamodb.eu-west-1.amazonaws.com

Ou passe --skip-default-credentials para que ele pare de injetar o key/secret fictício e recorra à resolução padrão de credenciais do SDK da AWS em vez disso (README).

Isso funciona, mas está fora do caminho feliz. As opções documentadas do dynamodb-admin são o endpoint, host, port, base path e um toggle de credenciais (README) — não há gerenciador de conexões, sem seletor de perfil, sem SSO. Trocar de conta ou região significa parar o processo Node e relançá-lo com variáveis de ambiente diferentes. Tudo bem para uma espiada ocasional numa tabela de produção; atrito como ferramenta diária em várias contas.

Onde o dynamodb-admin para

O limite aparece conforme seu trabalho vai além de uma única tabela local:

  • Tabelas ao vivo da AWS estão fora do caminho feliz. Como acima — você pode apontá-lo para uma região real, mas ele é documentado e padronizado em torno do DynamoDB Local, sem conexões salvas ou troca de perfil.
  • Sem consultas relacionais. Como qualquer navegador visual, ele lista e edita itens em uma tabela. Ele não consegue unir duas tabelas, GROUP BY, ou computar um COUNT / SUM, porque o DynamoDB não tem motor de consulta relacional por baixo. O dynamodb-admin não adiciona um — e o PartiQL também não: sua gramática de SELECT aceita um único FROM de tabela sem JOIN, GROUP BY, ou funções de agregação (referência de SELECT do PartiQL da AWS) (veja PartiQL vs SQL).
  • É uma aba de navegador num servidor que você roda. Sem app desktop nativo, sem conexões salvas entre projetos, sem cadeia de credenciais integrada — você mantém um processo Node (ou container) rodando e marca o localhost nos favoritos.

Nenhum desses é um bug. São o limite de uma ferramenta de dev local deliberadamente pequena. A questão é se seu fluxo de trabalho o cruzou.

O que você ganha migrando para um cliente DynamoDB completo

Um cliente desktop de DynamoDB fecha a lacuna de duas formas. Primeiro, um app para local e ao vivo: a mesma UI conecta ao DynamoDB Local, LocalStack e suas contas AWS reais, lendo sua cadeia padrão de credenciais da AWS (perfis, SSO, variáveis de ambiente) em vez de relançar um servidor por ambiente. Segundo, uma superfície de consulta de verdade sobre a navegação — condições de chave e filtro, edição inline, PartiQL e SQL.

O DynoTable conecta ao DynamoDB local e ao vivo de um único app desktop, usando os perfis e access keys da AWS que você já tem. Seus dados ficam no DynamoDB, então não há nada para migrar. Sobre a navegação e edição inline, seu recurso de destaque é o SQL Workbench.

SQL dentro das regras de padrão de acesso do DynamoDB

Um cliente visual simples — dynamodb-admin incluído — escaneia e filtra uma única tabela. Ele não consegue unir duas tabelas, agrupar linhas ou agregar, porque o DynamoDB não expõe nenhum motor relacional — até o SELECT do PartiQL é FROM único sem JOIN, GROUP BY, ou agregados (referência de SELECT do PartiQL da AWS). O SQL Workbench do DynoTable compila SQL — INNER/LEFT JOIN, GROUP BY, COUNT, SUM e companhia — até as operações reais de Query / Scan do DynamoDB no cliente. Você escreve SQL em formato relacional; o DynoTable o planeja contra suas chaves e GSIs, então fica dentro das regras de padrão de acesso do DynamoDB em vez de fingir que a tabela é relacional. Se você bateu na parede onde até o PartiQL para, SQL para DynamoDB e o guia de PartiQL vs SQL explicam o que falta e como o Workbench preenche.

-- O tipo de consulta que um navegador de tabela única não consegue expressar:
SELECT u.email, COUNT(o.id) AS orders, SUM(o.total) AS revenue
FROM Users u
JOIN Orders o ON o.userId = u.id
GROUP BY u.email;

Construir essas condições de chave e filtro à mão é trabalhoso; o DynamoDB Expression Builder gratuito gera a KeyConditionExpression / FilterExpression e os mapas de nome/valor de atributos por você — sem instalação necessária.

O DynoTable funciona com o DynamoDB Local como o dynamodb-admin?

Sim — o DynoTable roda contra seus endpoints locais quando você quer, então não é um substituto "só-ao-vivo". Veja conectar ao DynamoDB Local e LocalStack para a configuração de endpoint e credenciais falsas. Ele cobre o mesmo ciclo interno local que o dynamodb-admin cobre, mais as tabelas ao vivo e consultas que ele não consegue.

Avaliação honesta: quando o dynamodb-admin é suficiente

Se você só navega uma instância local de DynamoDB durante o desenvolvimento, quer algo gratuito e open source, e nunca precisa tocar em tabelas ao vivo ou rodar um JOIN, o dynamodb-admin é a escolha pragmática — mantenha-o. O DynoTable é um app desktop pago; ele merece seu lugar quando você trabalha entre contas locais e ao vivo, quer conexões salvas e sua cadeia real de credenciais da AWS, ou bateu numa consulta que um navegador de tabela única não consegue expressar.

Baixe o DynoTable para macOS, Windows ou Linux, aponte-o para o mesmo perfil que você usa hoje, e rode uma consulta que você não conseguia expressar antes. Veja preços para os planos atuais, e DynoTable como uma GUI de DynamoDB para o panorama mais amplo.

FAQ

O DynoTable é uma alternativa ao dynamodb-admin?

Para desenvolvimento só-local, o dynamodb-admin é gratuito e excelente. O DynoTable é a alternativa quando você também precisa de tabelas ao vivo da AWS, conexões salvas através da sua cadeia de credenciais da AWS, e um SQL Workbench que roda JOINs, GROUP BY e agregados — nenhum dos quais um navegador local de tabela única fornece.

O dynamodb-admin consegue conectar ao DynamoDB ao vivo da AWS?

Tecnicamente sim — você sobrescreve --dynamo-endpoint para uma região real e fornece credenciais (com --skip-default-credentials e as variáveis de ambiente padrão da AWS (README)). Mas ele é construído e padronizado em torno do DynamoDB Local, sem gerenciador de conexões ou troca de perfil, então o uso ao vivo está fora do caminho feliz.

Existe uma imagem Docker do dynamodb-admin?

Sim — aaronshaf/dynamodb-admin está publicada no Docker Hub e configurada via as variáveis de ambiente HOST, PORT, BASE_PATH e DYNAMO_ENDPOINT, então fica ao lado do amazon/dynamodb-local num docker-compose (README). O DynoTable é um app desktop, não um container, então não há imagem para rodar — ele conecta diretamente ao seu endpoint local ou conta ao vivo.

O DynoTable funciona com o DynamoDB Local como o dynamodb-admin?

Sim. O DynoTable conecta a endpoints locais — DynamoDB Local e LocalStack — assim como contas ao vivo da AWS, do mesmo app desktop. Veja o guia de conexão local.

O dynamodb-admin consegue rodar SQL ou unir tabelas?

Não. O dynamodb-admin navega e edita uma tabela por vez; ele não tem superfície SQL, e o DynamoDB em si não tem motor relacional — até o SELECT do PartiQL é FROM único sem JOIN, GROUP BY, ou agregados (referência de SELECT do PartiQL da AWS) — então JOIN, GROUP BY e agregados não são possíveis sem um cliente que os planeje. O SQL Workbench do DynoTable compila esses até as operações reais de Query / Scan do DynamoDB.

Relacionados

Última verificação em 2026-06-10. O dynamodb-admin é software open source licenciado sob MIT por seus respectivos autores; referenciado aqui apenas para identificação.

Trabalhe com o DynamoDB sem o Console

O DynoTable é um cliente desktop rápido para o DynamoDB — navegue pelas tabelas, execute consultas no estilo SQL e edite itens localmente.