Q86 — AWS SAA-C03 第11章
第 86/100 問 | ← 第11章
Q786. ある会社が、us-east-1 リージョンで写真ホスティングサービスを運用しています。このサービスでは、複数の国にいるユーザーが写真をアップロード・閲覧できます。一部の写真は数か月間にわたり頻繁に閲覧されますが、他の写真は1週間未満しか閲覧されません。アプリケーションでは、1枚あたり最大20 MBの写真のアップロードを許可しています。また、写真のメタデータを用いて、各ユーザーに表示する写真を決定しています。最もコスト効率の良い方法で、適切なユーザーアクセスを実現するソリューションはどれですか?
- A. 写真を Amazon DynamoDB に保存し、DynamoDB Accelerator(DAX)を有効にして、頻繁に閲覧されるアイテムをキャッシュします。
- B. 写真を Amazon S3 Intelligent-Tiering ストレージクラスに保存し、写真のメタデータおよびその S3 の場所を DynamoDB に保存します。 ✓
- C. 写真を Amazon S3 Standard ストレージクラスに保存し、30日以上経過した写真を S3 Standard-Infrequent Access(S3 Standard-IA)ストレージクラスへ移動する S3 Lifecycle ポリシーを設定します。オブジェクトタグを使用してメタデータを管理します。
- D. 写真を Amazon S3 Glacier ストレージクラスに保存し、30日以上経過した写真を S3 Glacier Deep Archive ストレージクラスへ移動する S3 Lifecycle ポリシーを設定します。写真のメタデータおよびその S3 の場所を Amazon OpenSearch Service に保存します。
正解: B. 写真を Amazon S3 Intelligent-Tiering ストレージクラスに保存し、写真のメタデータおよびその S3 の場所を DynamoDB に保存します。
解説
写真ホスティングサービスにおいて、ユーザーへの適切なアクセスを最もコスト効率よく実現するには、以下の選択肢が最適です: B. 写真を Amazon S3 Intelligent-Tiering ストレージクラスに保存し、写真のメタデータおよびその S3 の場所を DynamoDB に保存します。 Amazon S3 Intelligent-Tiering は、オブジェクトのアクセス頻度に応じて自動的に「頻繁アクセス tier」と「低頻度アクセス tier」の間でデータを移動させ、コストを最適化するストレージクラスです。本ユースケースのように、数か月間頻繁に閲覧される写真と、1週間未満しか閲覧されない写真が混在するような変動するアクセスパターンに非常に適しています。これにより、頻繁にアクセスされる写真は高速な tier に残り、低頻度の写真は自動的にコストの低い tier へ移動され、トータルコストが削減されます。 また、写真のメタデータとその S3 上の場所を DynamoDB に格納することで、メタデータの高速かつスケーラブルな検索・管理が可能になります。DynamoDB を活用すれば、ユーザーの嗜好などに基づき、どの写真を表示するかを効率的に判断できます。 他選択肢が不適切な理由は以下の通りです: A. DynamoDB は NoSQL データベースであり、写真のような大容量バイナリオブジェクトの保存には設計されていません。DynamoDB への写真保存は非効率かつ高コストであり、DAX は DynamoDB のクエリ結果をキャッシュするものであり、写真ファイル自体の保存・取得には対応しません。 C. S3 Standard から S3 Standard-IA へ Lifecycle ポリシーで移行する手法は、一定期間経過後のコスト削減には有効ですが、頻繁にアクセスされる写真については、Intelligent-Tiering のようにリアルタイムで最適な tier を選択できないため、コスト効率が劣ります。また、メタデータ管理にオブジェクトタグを用いるのは、検索・更新性能やスケーラビリティの面で、DynamoDB のような専用データベースに比べて劣ります。 D. S3 Glacier は長期アーカイブ向けであり、復元に時間がかかり、頻繁な読み取りアクセスには全く不向きです。また、メタデータの保存に Amazon OpenSearch Service を用いることは、DynamoDB と比較して追加の複雑さとコストを招き、本ユースケースにおける明確な利点はありません。 したがって、写真ホスティングサービスにおいて、ユーザーへの適切なアクセスを最もコスト効率よく実現するソリューションは、選択肢 B です。