Praticar de graça

🗄️Entenda o DynamoDB

O DynamoDB é um banco de dados NoSQL totalmente gerenciado: rápido, escala sozinho e você nunca cuida de servidor. Diferente do SQL, ele não tem colunas fixas — cada item pode ter seus próprios atributos. Em troca dessa velocidade, você modela os dados pensando em COMO vai buscá-los.

Pra que serve

Guardar dados que precisam ser lidos e escritos muito rápido, em qualquer escala: sessões de usuário, carrinho de compras, catálogo de produtos, placar de um jogo, dados de dispositivos IoT. Quando o tráfego explode, ele aguenta sem você mexer em nada.

Onde se usa no mundo real

Vocabulário

Tabela
onde os dados ficam. Você define só a chave — não um esquema fixo de colunas.
Partition key (HASH)
a chave primária obrigatória. Identifica cada item e decide onde ele é guardado.
Sort key (RANGE)
chave secundária opcional. Permite ordenar e agrupar itens sob a mesma partition key.
Item
cada registro (equivale a uma "linha" do SQL). É um conjunto de atributos.
Tipos S/N/B
no JSON cada valor declara o tipo: S = texto, N = número, B = binário.
💰 Como cobra: No modo PAY_PER_REQUEST você paga por requisição, sem reservar nada — simples e ótimo pra começar. Também tem um nível gratuito.

Comandos que você aprende nesta trilha

Cada um deles roda de verdade no terminal do CLImb, com a mesma saída e as mesmas mensagens de erro que a AWS devolve.

aws dynamodb list-tables

aws dynamodb list-tables

aws dynamodb list-tables

aws dynamodb create-table

aws dynamodb create-table

aws dynamodb create-table --table-name <nome>
--attribute-definitions AttributeName=<attr>,AttributeType=<S|N|B>
--key-schema AttributeName=<attr>,KeyType=HASH
--billing-mode PAY_PER_REQUEST

aws dynamodb describe-table

aws dynamodb describe-table

aws dynamodb describe-table --table-name <nome>

aws dynamodb put-item

aws dynamodb put-item

aws dynamodb put-item --table-name <nome> --item '<json>'

aws dynamodb get-item

aws dynamodb get-item

aws dynamodb get-item --table-name <nome> --key '<json>'

aws dynamodb scan

aws dynamodb scan

aws dynamodb scan --table-name <nome>

aws dynamodb query

aws dynamodb query

aws dynamodb query --table-name PedidosCliente \
--key-condition-expression "cliente = :c" \
--expression-attribute-values '{":c":{"S":"ana"}}'

aws dynamodb update-item

aws dynamodb update-item

aws dynamodb update-item --table-name PedidosCliente \
--key '{"cliente":{"S":"ana"},"data":{"S":"2026-07-01"}}' \
--update-expression "SET valor = :v" \
--expression-attribute-values '{":v":{"N":"199"}}'

aws dynamodb delete-item

aws dynamodb delete-item

aws dynamodb delete-item --table-name PedidosCliente \
--key '{"cliente":{"S":"ana"},"data":{"S":"2026-07-15"}}'

O que você pratica (18 atividades)

Cada atividade é um pedido de trabalho, do jeito que ele chega no dia a dia — você resolve digitando os comandos, não escolhendo alternativa.

Quais tabelas existem?

Comece listando as tabelas do DynamoDB.

Liste as tabelas

Veja todas as tabelas da conta.

Crie a tabela clientes

Crie a tabela clientes com chave primária id (tipo string), no modo de cobrança por requisição. É o comando mais longo até agora — o manual é seu amigo.

Catálogo de produtos

A loja precisa guardar os produtos. Crie a tabela Catalogo com chave de partição sku (texto).

Sessões de usuário

Pra manter quem está logado, crie a tabela Sessoes com chave token (texto).

Detalhe da tabela

Crie a tabela Estoque (chave sku) e veja os detalhes dela.

Primeiro registro

Insira na tabela clientes um item com id "1" e nome "Ana".

Cadastre o primeiro produto

Crie a tabela Itens (chave id) e grave o primeiro item nela.

Busque pela chave

Busque o item de id "1" na tabela clientes usando get-item.

Varra a tabela

Liste todos os itens da tabela clientes com um scan.

Busque um item

Crie a tabela Clientes (chave cpf), grave um item e busque ele pela chave.

Varra a tabela

Crie a tabela Pedidos, grave um item e faça um scan pra ver tudo.

Uma tabela com chave composta

Pra guardar vários pedidos do mesmo cliente a chave precisa de duas partes: a de partição (cliente) e a de ordenação (data). Crie a tabela PedidosCliente assim.

Dois pedidos do mesmo cliente

Grave dois pedidos da cliente ana, em datas diferentes (2026-07-01 e 2026-07-15). Com chave composta os dois convivem — não se sobrescrevem.

Query: vá direto na partição

O scan lê a tabela inteira; o query vai direto na partição. Traga todos os pedidos da ana usando query. <small>(a condição usa um apelido :c, cujo valor vai em outro parâmetro)</small>

Só os pedidos a partir de uma data

A chave de ordenação permite recortar um intervalo sem ler o resto. Traga só os pedidos da ana com data maior que 2026-07-10.

Mude um campo só

O put-item substitui o item inteiro (e apaga o que você não mandou). O update-item mexe só no que você pedir. Mude o valor do pedido da ana de 2026-07-01 para 199.

Apague um pedido

Apague o pedido da ana de 2026-07-15. <small>(com chave composta, a chave do delete também precisa das duas partes)</small>

Continue por aqui

Ler explica. Digitar fixa. No CLImb você roda os comandos de verdade num terminal AWS simulado — o estado persiste entre eles, como na nuvem real.

As 3 primeiras atividades desta trilha são abertas; o resto faz parte do plano Pro.

Começar — 3 atividades grátis
Todas as lições · Praticar no terminal · Sobre