Itemの中身かItems配列を選ぶ
GetItemの結果ならItemの値をコピーして項目マップを選択します。クエリのItems配列ならバッチを選びます。{"N":"42"}だけを変換する場合は単一値です。属性名から入力形態を推測しないため、選択と内容を合わせてください。
データベース・SQLツール
方向と入力の構造を選び、型を保持するか通常JSONにするかを決めてください。
処理はブラウザー内で完結し、入力は送信されません。
結果は更新されていません。現在の入力を変換してください。
DynamoDB JSON変換は、CLIや低レベルAPIから取り出した値をテストデータとして読み直すときに使えます。S、N、Mといったデータ型記述子を単純に消すと、数値と文字列、リストとセットの違いまで消える場合があります。まず項目全体なのか単一属性なのかを確認してください。
DynamoDB JSONと通常JSONの相互変換は、SDKでいうmarshallとunmarshallに相当する型の対応付けです。転送時に文字列となる数値も数値として扱い、順序付きリストと集合は区別します。レスポンスの外枠を自動で削除しないため、Itemという実際の属性名もそのまま扱えます。
DynamoDB JSON変換では、数値をJavaScriptのNumberに通さず字句として読み取ります。9007199254740993は同じ桁のまま、引用符のないJSON数値として出力されます。小数の有効桁数と指数範囲も十進数の計算で検査します。
保持モードはセットとバイナリに明示的な$ddbマーカーを付けます。通常モードは配列とBase64文字列を出力し、変化した型のパスを一覧で示します。読みやすさを選んだ結果から元の型を推定できるとは限らないことを、その場で確認できます。
GetItemの結果ならItemの値をコピーして項目マップを選択します。クエリのItems配列ならバッチを選びます。{"N":"42"}だけを変換する場合は単一値です。属性名から入力形態を推測しないため、選択と内容を合わせてください。
このページで逆変換する予定なら既定の保持モードを使います。受け取り側が通常JSONだけを扱うなら通常モードにして、型変更の全パスを確認します。普通の配列はL、文字列はSとなり、中身が似ていてもセットやバイナリにはなりません。
入力や方向、構造、字下げを変えるとコピーと保存がすぐ無効になります。自動処理は350ミリ秒後に更新し、無効にすると変換ボタンとCtrl/Cmd + Enterが使えます。サンプルと消去はプレビュー後に適用し、元に戻すと両欄の状態が復元されます。
S、N、B、BOOL、NULL、M、L、SS、NS、BSを扱います。リストは異なる型を混在でき、空文字列、空バイナリ、空マップ、空リストも保持します。NULLはnullになり、属性そのものを削除することはありません。
項目マップの配列を一括変換できます。一件でも不正な値があれば全体の出力を止め、不正なレコードを飛ばしません。S、N、Item、Itemsという実際の属性名が自動判定によって失われることもありません。
最大38桁の有効数字と非ゼロ値の範囲を確認します。NSの1と1.0は同じ値です。文字列集合は文字列で、バイナリ集合はデコード後のバイトで比較し、空集合と重複はエラーにします。自動で整理して成功扱いにはしません。
構文と型のエラーには入力のパス、行、列を示し、エディターの該当行を強調します。通常モードの型変更一覧は50件ずつ表示できます。コピーとJSON保存は、画面に見えている件数に関係なく現在の完全な結果を出力します。
DynamoDB → JSONと項目マップを選び、各プロパティーがAttributeValueのオブジェクトを入力します。{"S":"text"}だけなら単一値を選びます。通常JSONで表せないセットやバイナリには、保持モードでマーカーが付く点を確認してください。
一部の変換器は浮動小数点の丸めを避けるため、大きな数を引用符で囲みます。このツールは引用符を加えず、数値の字句と十進数の検証を使います。出力された数値の桁は正確ですが、受け取り側も精度を保持できる読み込み方法を使う必要があります。
はい。B、SS、NS、BSを検証し、既定では型マーカーを残します。通常JSONを選ぶと文字列や配列になり、影響を受けるパスが表示されます。その通常結果を逆変換しても、元の特殊な型を推定することはできません。
上限内の項目マップ配列ならバッチモードで変換できます。AWS S3の全体エクスポートは通常、Itemで包まれたJSONLなので直接は対応しません。必要な項目を配列に整理してから入力してください。不正な項目があれば全体を停止します。
レスポンスのItemの値かItems配列を取り出し、それに合う形態を選んでください。応答のメタデータや不要なフィールドは自動削除しません。低レベルAPIへ渡すためのデータを作る場合は、JSON → DynamoDBへ切り替えて型付き属性値を得られます。
型の扱いで不明な点がありますか?