Q34 — AWS DVA-C02 第2章

第 34/100 問 | ← 第2章

開発者がAmazon DynamoDBテーブルを使用する新しいアプリケーションを構築しています。仕様では、48時間より古い項目を削除する必要があります。この要件を満たすソリューションはどれですか?

正解: C. 数値データ型の新しい属性を作成します。この属性に対してDynamoDBテーブルレベルでTTLを有効化します。アプリケーションコード内で、各新規項目の挿入時に現在時刻のタイムスタンプに48時間を加算した値をこの属性の値として設定します。

解説

Amazon DynamoDBにおいて、48時間以上経過した項目を削除するには、数値データ型の新しい属性を作成し、DynamoDBテーブル自体でTTLを有効化する必要があります(LSI上でのTTL有効化はサポートされていません)。アプリケーションコードでは、各新規項目の挿入時に現在時刻のタイムスタンプに48時間を加算した値(Unixエポックタイムスタンプ)をこの属性に設定します。これにより、DynamoDBは指定されたTTLに基づいて自動的に古くなった項目を削除します。選択肢AおよびBはLSI上でTTLを有効化しようとしており誤りです。選択肢Dは文字列データ型を使用しており、タイムスタンプの比較・処理に不向きです。したがって、正解は選択肢Cです。