Ferramentas de banco de dados e SQL

Conversor DynamoDB JSON

Escolha a direção e a estrutura de entrada antes de definir o tratamento dos tipos.

Conversor DynamoDB JSON

JSON de entrada

JSON de saída

O processamento fica neste navegador. A entrada não é enviada a um servidor.

Opções de conversão

Marcadores próprios $ddb preservam conjuntos e binários. $ddb.M protege mapas reais que têm formato de marcador.

Limites: 500.000 caracteres de entrada, 50.000 nós, 32 níveis e 2.000.000 de caracteres de saída.

Resultado desatualizado. Converta a entrada atual.

O Conversor DynamoDB JSON ajuda a transformar uma resposta da CLI em dados de teste legíveis. Remover as chaves S, N e M sem interpretar o conteúdo pode trocar o significado dos valores. Um número trafega como string, mas continua sendo um número no modelo de dados.

Para converter DynamoDB para JSON, o marshalling precisa distinguir listas ordenadas de conjuntos. Selecione explicitamente item, lote ou valor único. Assim, um atributo chamado Item ou Items não é confundido com o envelope de uma resposta da API.

Por que usar o Conversor DynamoDB JSON?

Manter os dígitos e o tipo numérico

O Conversor DynamoDB JSON lê tokens numéricos sem passar por JavaScript Number. O identificador 9007199254740993 continua como número JSON sem aspas, com os mesmos dígitos. A precisão decimal e a faixa do expoente também são verificadas sem arredondamento de ponto flutuante.

Uma sequência longa de blocos numéricos atravessa a conversão mantendo quantidade e ordem.

Guardar informação para o caminho de volta

O modo de preservação mantém conjuntos e binários com marcadores $ddb explícitos. JSON puro usa arrays e strings Base64, mostrando cada caminho cujo tipo mudou. Você escolhe uma saída compatível com o próximo programa sem confundi-la com uma conversão reversível.

Um conjunto mantém o selo de tipo na rota reversível; a rota simples produz um array sem selo.

Separar o conteúdo da resposta e escolher a saída

01

Copiar o valor do campo correto

Em GetItem, copie o valor de Item e escolha Item. Para o array Items de uma consulta, escolha Lote. Um único {"N":"42"} usa Valor único. A estrutura não é inferida pelo nome da propriedade, e os metadados da resposta não são removidos automaticamente.

02

Planejar a conversão de volta

Mantenha Preservar tipos se for voltar ao formato original nesta página. Se o destino só aceita JSON puro, confira todos os caminhos sinalizados. No sentido inverso, arrays comuns viram L e strings viram S; conteúdo semelhante não é suficiente para inferir conjuntos ou binários.

03

Exportar somente o resultado atual

Qualquer mudança no texto ou nas opções bloqueia a saída antiga imediatamente. O modo automático aguarda 350 ms; no manual, use Converter ou Ctrl/Cmd + Enter. Exemplo e Limpar exibem uma prévia. Desfazer restaura entrada, saída e validade juntas.

Tipos, valores e estruturas verificados em conjunto

Dez descritores com recursão

São aceitos S, N, B, BOOL, NULL, M, L, SS, NS e BS. Listas podem misturar tipos. Strings, binários, mapas e listas vazios são preservados. NULL se torna null sem remover a propriedade que o contém.

Lotes sem omissão de registros

Um array JSON de mapas de atributos é processado como lote. Qualquer membro inválido impede a exportação inteira; registros com erro não são ignorados. Atributos chamados S, N, Item e Items mantêm seus nomes porque a estrutura é escolhida pelo usuário.

Conjuntos comparados pelo valor real

Números são verificados com até 38 algarismos significativos e a magnitude permitida. Em NS, 1 e 1.0 são duplicados. SS compara strings e BS compara os bytes decodificados. Conjuntos vazios ou duplicados causam erro, sem ordenação ou limpeza silenciosa.

Diagnóstico localizado e exportação completa

Erros de sintaxe e tipo mostram caminho, linha e coluna, além de destacar a linha de entrada. Mudanças de tipo no modo puro aparecem em grupos de 50 caminhos. Cópia e download JSON incluem sempre a saída atual completa, independentemente dos avisos visíveis.

O que muda entre JSON e tipos de atributo

Os marcadores são uma convenção local
Preservar tipos usa {"$ddb":{"SS":["red"]}} e equivalentes B, NS e BS nas posições de valor. Um mapa real que contém somente $ddb é protegido com $ddb.M e o mapa de atributos original. Não é um formato oficial da AWS: converta de volta antes de enviar AttributeValue.
JSON puro não identifica o conjunto original
Um array não distingue L, SS, NS e BS, e uma string parecida com Base64 não prova que era B. O modo puro informa essas mudanças e gera L e S no retorno. Nesse modo, $ddb também é uma chave comum de objeto.
A precisão precisa continuar no destino
O texto exportado mantém os números exatos, mas um JSON.parse posterior em JavaScript ainda pode arredondar inteiros grandes. São aceitos 38 algarismos significativos; o valor absoluto diferente de zero vai de 1e-130 ao maior valor de 38 dígitos abaixo de 1e126. Notações decimais não JSON em N são normalizadas sem perda numérica.
Sintaxe estrita e limites de processamento
A entrada aceita 500.000 unidades UTF-16 e 50.000 nós sintáticos; documentos podem ter 32 níveis de contêineres. A saída permite até 2.000.000 de caracteres. Chaves duplicadas, conjuntos inválidos, Base64 não canônico e substitutos Unicode isolados são rejeitados. Não há truncamento nem reparo automático.
Não valida a gravação em uma tabela
Envelopes Item, Items e Streams, JSONL e linhas de exportação S3 não são extraídos automaticamente. Não há conexão AWS, leitura de URL, upload ou escrita. Chaves, índices e o limite real de armazenamento de 400 KB ficam fora da análise. Um valor vazio válido fora da chave pode ser inválido como chave.

Perguntas sobre o Conversor DynamoDB JSON

Como converter DynamoDB JSON em um objeto JSON comum?

Selecione DynamoDB → JSON e Item quando cada propriedade do objeto contiver um AttributeValue. Para {"S":"text"} isolado, escolha Valor único. O modo de preservação adiciona marcadores quando JSON não consegue representar diretamente conjuntos ou valores binários.

Por que um número grande vira uma string?

Alguns conversores colocam números grandes entre aspas para evitar arredondamento. Aqui o token numérico permanece sem aspas e é verificado com aritmética decimal. O texto fica exato, mas o programa que o recebe precisa usar uma leitura capaz de manter a mesma precisão.

Posso converter conjuntos e valores binários?

Sim. B, SS, NS e BS são validados e preservados por padrão com marcadores explícitos. Em JSON puro, tornam-se strings ou arrays, e todos os caminhos afetados são listados. O resultado puro não permite descobrir com segurança o tipo especial original no retorno.

Posso converter a exportação de uma tabela inteira?

Um array de mapas de atributos funciona no modo Lote, dentro dos limites. Uma exportação AWS S3 costuma ser JSONL com envelopes Item e não é aceita diretamente. Organize primeiro um array de tamanho adequado. Um registro incorreto interrompe a conversão do lote inteiro.

Como simplificar o JSON de uma consulta DynamoDB na AWS CLI?

Copie o valor de Item ou o array Items e escolha a estrutura correspondente. Metadados e campos da resposta não são removidos automaticamente. Para preparar uma requisição de baixo nível, use JSON → DynamoDB para transformar um objeto comum em atributos com descritores de tipo.

Faltou esclarecer algum tipo?

Testar um item com vários tipos

Experimente o Conversor DynamoDB JSON com o exemplo e depois escolha a representação que o aplicativo de destino consegue interpretar.