ExamScores DynamoDB テーブルは、パーティションキーとして student_id を、ソートキーとして subject_name を使用し、top_score を属性としています。アプリは、各科目で最高得点者の student_id を迅速に返す必要があります。これらのクエリを高速化するには、どの変更が必要ですか?
解答を選択
オプションをタップして解答を確認してください。
正解: subject_name をパーティションキー、top_score をソートキーとするグローバルセカンダリインデックス (GSI) を作成します。.
これが解答である理由
このアプリケーションは、各科目で最高得点者の studentid を迅速に返す必要があります。これは、subjectname でクエリを行い、topscore でソートして最高得点を見つけることを意味します。このアクセスパターンをサポートするには、subjectname をパーティションキー、topscore をソートキーとするインデックスが必要です。ローカルセカンダリインデックス (LSI) は、ベーステーブルと同じパーティションキーを持つ必要がありますが、この場合は studentid です。したがって、LSI はこのクエリパターンには適していません。グローバルセカンダリインデックス (GSI) は、ベーステーブルとは異なるパーティションキーとソートキーを持つことができるため、この要件を満たします。他のオプションは、必要なクエリパターンをサポートしていません。例えば、topscore をパーティションキーにすると、特定の科目の最高得点を効率的に見つけることができません。
試験に合格 — 終わりのない解答探しなしで
この試験のすべての検証済み問題と解説を1か所で入手し、準備時間を大幅に節約しましょう。1,000以上の認定 · 20以上の言語 · 無料で開始。
試験に早く合格する → カード不要