Q40 — AWS SAA-C03 第11章
第 40/100 問 | ← 第11章
Q740. ソーシャルメディア企業が、ユーザーのプロフィール、関係性、およびインタラクションを表すデータベースをAWSクラウド上に保存したいと考えています。また、このデータベース内の変更を監視するアプリケーションが必要です。さらに、このアプリケーションはデータエンティティ間の関係性を分析し、ユーザーに対してレコメンデーションを提供する必要があります。 これらの要件を満たすソリューションのうち、運用オーバーヘッドが最も少ないものはどれですか?
- A. Amazon Neptune を使用してデータを保存し、Amazon Kinesis Data Streams を使用してデータベースの変更を処理します。
- B. Amazon Neptune を使用してデータを保存し、Neptune Streams を使用してデータベースの変更を処理します。 ✓
- C. Amazon Quantum Ledger Database (Amazon QLDB) を使用してデータを保存し、Amazon Kinesis Data Streams を使用してデータベースの変更を処理します。
- D. Amazon Quantum Ledger Database (Amazon QLDB) を使用してデータを保存し、Neptune Streams を使用してデータベースの変更を処理します。
正解: B. Amazon Neptune を使用してデータを保存し、Neptune Streams を使用してデータベースの変更を処理します。
解説
ユーザーのプロフィール、関係性、インタラクションをAWSクラウド上に格納し、データベースの変更を監視・分析してユーザーへレコメンデーションを提供するという要件を、最小限の運用オーバーヘッドで実現するには、選択肢B(Amazon Neptuneでデータを保存し、Neptune Streamsでデータベースの変更を処理する)が最も適しています。 Amazon Neptuneは、高度に相互接続されたデータ(グラフ構造)の保存・照会に最適化された、フルマネージド型のグラフデータベースサービスです。ソーシャルメディアアプリケーションのように、データエンティティ間の複雑な関係性を分析・探索するユースケースに非常に適しています。Neptuneを利用することで、ユーザー間の関係性を効率的にクエリ・トラバースでき、レコメンデーション機能の実装も容易になります。 また、Neptune Streamsは、Neptuneデータベース内で発生した変更をリアルタイムでキャプチャ・ストリーミングするためのネイティブ機能です。これにより、アプリケーションはデータベースの変更を自動的に検知・処理でき、最新の状態を維持しながら、タイムリーなレコメンデーションを提供できます。 一方、選択肢Aは、Kinesis Data Streamsを介して変更を処理するため、追加の統合・管理作業や運用負荷が発生します。選択肢CおよびDは、Amazon QLDBを採用していますが、QLDBは不変のトランザクションログを提供するレッジャーデータベースであり、複雑な関係性を持つグラフデータの照会・分析には最適ではありません。また、Neptune StreamsはQLDBと連携できないため、選択肢Dは技術的に不成立です。 したがって、要件を最小限の運用オーバーヘッドで満たす最も適切なソリューションは、選択肢Bです。