Filtros e padrões de consulta
Toda aba de tabela carrega um filtro: o estado de predicado que o DynoTable
transforma em uma requisição do DynamoDB. Entender como as peças se traduzem em
query ou scan é a maior parte do que torna o app rápido e a sua conta baixa.
Esta página cobre o modo de aba Visual. Para escrever consultas no estilo SQL diretamente, mude para o PartiQL; para joins e agregações, abra um Workbench.
A linha de filtro
O modo visual mostra uma única linha horizontal de pílulas:
[Index] [hashKey = value] [rangeKey op value] [+ filter] | [Clear] [Query/Scan]- Pílula de índice — o padrão de consulta pelo qual você lê.
- Pílulas de chave — a chave de partição (hash) e, quando presente, a chave de ordenação (range) desse padrão.
- Pílulas de filtro — condições adicionais fora das chaves (filtros de scan).
- O botão de ação mostra Query ou Scan dependendo do que você configurou, e vira Carregar mais assim que os resultados começam a ser transmitidos.
Defina um valor e o DynoTable executa automaticamente; limpar ou editar uma pílula roda de novo assim que o filtro voltar a ser válido.

Padrões de consulta
Um padrão de consulta é o índice pelo qual você lê:
PRIMARY— a própria / da tabela.- Um ou nomeado — com seu próprio esquema de chaves.
O padrão escolhido decide em quais chaves você pode filtrar. Troque de padrão pela pílula de índice; as pílulas de chave se atualizam para a chave de partição e de ordenação daquele padrão.
Query vs scan
Esta é a distinção que importa para custo e velocidade:
- Defina um filtro de e o DynoTable emite uma direcionada — ele lê apenas a partição correspondente. Barata e rápida.
- Sem um filtro assim, ele recai em um , que lê a tabela (ou o índice) inteira, página por página. O botão de ação mostra Scan para deixar isso explícito.
Filtros de chave
A pílula de chave de partição recebe um valor; a ação vira Query no momento em que ela é definida. A pílula de chave de ordenação adiciona uma comparação por cima:
=,<,<=,>,>=— comparações ordenadas (numéricas e lexicográficas em strings).begins_with— correspondência de prefixo em strings ou binários.between— um intervalo inclusivo; a pílula ganha um segundo campo de valor.
Chaves do tipo string oferecem autocompletar: à medida que o DynoTable indexa uma tabela em segundo plano, ele sugere valores reais que você já viu. Chaves sem sugestões úteis (UUIDs aleatórios, por exemplo) recaem em um campo de texto simples.
Filtros de scan
A pílula + filter adiciona uma condição fora das chaves — qualquer atributo, não só chaves. Cada filtro é uma coluna, um operador e um valor:
- Comparações:
=,≠,<,<=,>,>=,between. - Pertencimento:
in— corresponde a qualquer valor de uma lista (strings ou números). - String / binário:
begins_with,contains. - Existência:
exists,not exists. - Tipo:
type equals/type not equals(contra o código de tipo do DynamoDB —S,N,BOOL, …), além de uma famíliasizepara tipos de coleção.
Os operadores oferecidos se adaptam ao tipo do atributo — comparações de ordenação
aparecem para números, begins_with para strings. Os filtros de scan se aplicam
depois que a query ou o scan lê os itens, então eles restringem o resultado, mas
não tornam um scan mais barato. Use um filtro de chave para cortar a leitura; use
filtros de scan para refinar o que volta.
Single-table design: chaves compostas
Os single-table designs empacotam vários tipos de entidade em uma única tabela atrás
de um prefixo de chave — USER#123, ORDER#456, TENANT#acme. O DynoTable
reconhece isso por conta própria, sem nada para configurar:
- As chaves são decodificadas no lugar. Um valor composto — um prefixo em
maiúsculas unido ao resto por
#,|ou~— é renderizado como suas partes rotuladas em toda grade: a tabela, os resultados do PartiQL e o Workbench. Valores comuns que apenas contêm um desses caracteres (uma cor hex como#FF5733, uma lista separada por pipe) são deixados exatamente como estão. - Filtre para uma entidade com um clique. Clique com o botão direito em uma linha
e escolha Filter to
USER#— o prefixo é lido direto da chave daquela linha. O DynoTable aplica umbegins_withreal na chave como uma pílula de filtro comum, que você limpa do jeito de sempre (o ✕ dela ou Clear). Quando a chave de partição e a chave de ordenação de uma linha estão ambas prefixadas, você ganha uma opção para cada.
Não há diálogo, configuração nem nada salvo — é derivado ao vivo das chaves que estão na sua frente.

Ordenação e paginação
A pílula de chave de ordenação carrega um toggle de ordem de ordenação
(ascendente / descendente) que mapeia para o ScanIndexForward do DynamoDB. Os
resultados são transmitidos uma página por vez — Carregar mais busca a próxima
página, e mudar o tamanho da página recarrega a partir da
primeira página.
Rodar até o fim
Por padrão, uma query ou scan pausa após algumas páginas para que uma tabela grande não carregue tudo de uma vez — o botão de ação mostra Carregar mais para buscar a próxima página. Quando você prefere puxar tudo de uma só vez, mude o modo de execução:
- Clique no chevron ao lado do botão de ação e escolha Rodar até o fim. O botão primário muda para Escanear tudo / Consultar tudo / Rodar tudo — inclusive quando você está pausado no limite de páginas, onde clicar nele drena até o fim.
- Clique nesse botão renomeado e o DynoTable continua buscando páginas até que a tabela (ou o índice) inteira seja lida. A escolha é lembrada por aba durante a sessão; escolha Paginado para voltar. Escolher um modo nunca inicia uma execução sozinho — ele só renomeia o botão, então você decide quando disparar.
Em uma tabela grande, armar o Rodar até o fim primeiro mostra um prompt de confirmação com o tamanho aproximado e a contagem de itens da tabela, para que um scan completo seja sempre uma escolha deliberada, não um acidente. Confirme para prosseguir ou cancele para continuar paginado.

Pelo teclado:
- ⌘↩ roda a consulta atual — e quando os resultados estão pausados no limite de páginas, ele continua para a próxima página em vez de recomeçar.
- ⌘⇧↩ sempre roda até o fim de uma só vez.
- ⌘. ou Esc interrompe uma execução em andamento a qualquer momento.








