1

DynamoDB テーブル Contact があります。userId は hashKey で、id は範囲キーです。現在、categoryId や deleted ( true|false ) などのパラメーターもあります。

特定のカテゴリ内のすべてのユーザーの連絡先を更新する必要があります ( categoryId を指定する必要があります)。ローカル セカンダリ インデックス ( userId を hashKey として、 categoryId を rangeKey として) を作成しましたが、まだ運がありません。

注意!1 つのクエリですべてのアイテムを更新する必要があります。アイテムの数が非常に多いため、すべてを選択して個別に更新することはできません。

どんな助けでも大歓迎です!前もって感謝します。

4

1 に答える 1

2

オブジェクトへのキーを事前に所有していない場合、DynamoDB で結果を更新する方法はありません。つまり、SQL (UPDATE + WHERE) では実行できますが、DynamoDB では実行できません。最初に (セカンダリ インデックスを使用して) オブジェクトをフェッチし、次にプライマリ キーでバッチ更新を行う必要があります。

于 2014-09-19T15:43:26.813 に答える