[解決済み] DynamoDBテーブルの複数の項目を一度に更新する方法
質問内容
DynamoDBを使用していますが、複数のレコードの特定の属性を更新する必要があります。要件を擬似言語で書くと、"update tableという更新を行いたい。 人物 set relationshipStatus = 'married' where personKey IN (key1, key2, key3, ...)" (personKeyがDynamoDBテーブルのKEYであると仮定して).
つまり、IN句を含む更新をしたいのですが、一括更新とでも言うのでしょうか。私は、以下のものを見つけました。 これ のリンクで、一括更新のような操作が存在するかどうかを明確に尋ねており、そこでの回答は「存在しない」でした。ただし、IN-clauseについては触れていない。その ドキュメント を見ると、ConditionalExpressionsでIN-clausesがサポートされていることがわかります(一度に100個の値を供給可能)。しかし、私はそのようなIN句が私の状況に適しているかどうかわからない。なぜなら、私はまだ必須のKEY属性(これは単一の値を期待するようだが、私は間違っているかもしれない)を供給する必要があり、私はそれが更新のたびに完全なテーブルスキャンを行うことを心配しているからである。
そこで質問ですが、複数のDynamoDBレコードの更新を同時に実現するにはどうしたらよいでしょうか?現時点では、私は各キーに対して1つずつ更新文を呼び出す必要があり、それは本当に間違っていると感じているように見えます...
どのように解決するのですか?
ご指摘の通り、DynamoDBは一括更新をサポートしていません。更新したいすべてのレコードのキーを問い合わせ、取得する必要があります。そして、そのリストをループして、1件ずつ更新していくことになります。
関連
-
[解決済み】DynamoDBMapperとTable for DynamoDB Tablesの違いとは?
-
[解決済み] -bash: aws: コマンドが見つかりませんでした。
-
[解決済み] AzureにはAWSのCloudFormationのようなIaCツールはあるのでしょうか?[クローズド]
-
[解決済み] DynamoDBでカラムを追加する方法
-
[解決済み] 新しいIAM管理者ユーザーに "この操作を実行する権限がありません "と表示される
-
[解決済み] List<AWS::EC2::Subnet::Id> 型のパラメータをネストしたCloudFormationテンプレートに渡す。
-
[解決済み] CLOUDFRONT EC2オリジンエラー CloudFrontはオリジンとの接続を確立しようとしました[重複]。
-
[解決済み] AWSのstsは、1つのコマンドの役割を担う
-
[解決済み] AWS 0.0.0.0/0と::/0の意味は何ですか?
-
[解決済み] S3バケットを丸ごとダウンロードする?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】あなたのWSGIPathは、存在しないファイルを参照しています。
-
[解決済み】DynamodbとRedisの比較
-
[解決済み] DynamoDBテーブルの複数の項目を一度に更新する方法
-
[解決済み] AWS KinesisとEventBridgeの違いは何ですか?
-
[解決済み] Amazon S3におけるHeadBucket操作とは
-
[解決済み] タスク実行時にAWS ECSエラーが発生しました。クラスタにコンテナインスタンスが見つかりませんでした。
-
[解決済み] AWSのロールを "アサイン "するとはどういうことですか?
-
[解決済み] EC2でインスタンスを削除するには?
-
[解決済み] パスワードなしでec2インスタンスにscp(セキュアコピー)する
-
[解決済み] Amazon API GatewayからAWS Lambdaにクエリストリングやルートパラメータを渡す方法