DynamoDB#AWS若槻龍太2021.11.27この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。IoT事業部の若槻です。CDKで作成してみました。以前の下記エントリでは、ステートマシンからDynamoDBテーブル上の複数アイテムのUpdateItemをTransactWriteItemsを使って行いました。DevelopersIOしかしこのTransactWriteItemsは一度に更新処理できる件数は最大25件という制限があります。requests.そこで今回は、ステートマシンから26件以上のUpdateItem操作を、TransactWriteItems操作をMapステートでループ実行する構成で実装してみます。deployでデプロイします。すると下記のような定義のステートマシンが作成されます。以下のようなペイロードを入力にしてステートマシンを実行します。1件目のTransactItemsは25件、2件目のTransactItemsは2件のUpdateItem操作を指定しています。(大きいので折りたたんでいます。]}テーブルのアイテム一覧を見ると、26件以上のアイテムがUpdateItemできています。制限1件のTransactItemsで指定可能な操作件数は25件まで今回回避しようとした制限です。1件のTransactItemsで26件以上を指定した場合は以下のようなエラーによりMapイテレーションの実行が失敗します。null)"ステートマシンの最大入出力サイズは256KBステートマシンのタスク、状態や実行の最大入出力サイズは256KB(262,144バイト)です。増加256KBを超えるサイズのデータを扱いたい場合は、S3バケットにデータを一時保存するなどして256KB内に収めるようにします。Functionsちなみに今回の動作確認で使用した入力データは約14KBでした。