2017-02-14 6 views
2

私はDynamoDBを使用しており、複数のレコードの特定の属性を更新する必要があります。私の要件を擬似言語で書いてみましょう。「update table は、personKey IN(key1、key2、key3、...)がどこにあるのかを、relationshipStatus = 'married'と設定しました(personKeyはKEY私のDynamoDBテーブルにあります)。DynamoDBテーブルの複数のアイテムを一度に更新する方法

つまり、IN節で更新を行いたい、またはバッチ更新と呼ぶことができます。私はthisリンクを発見しました。バッチ更新のような操作が存在し、その答えが存在しないかどうかを明示的に尋ねます。しかし、IN節は言及していません。 documentationは、ConditionalExpressionsでIN句がサポートされていることを示しています(一度に100の値を入力できます)。しかし、そのようなIN句が自分の状況に適しているかどうかはわかりません。なぜなら、依然として必須のKEY属性(これは単一の値を期待しています - 私は間違っていると思われます)を供給する必要があるからです。各更新のフル・テーブル・スキャン

私の質問は、複数のDynamoDBレコードを同時に更新する方法です。現時点では、各キーごとに更新ステートメントを1つずつ呼び出す必要があり、実際には間違っていると感じるようです。

答えて

7

前述のとおり、DynamoDBはバッチ更新操作をサポートしていません。更新するすべてのレコードのキーを照会して取得する必要があります。そのリストをループし、各項目を1つずつ更新します。

関連する問題