無限ノック › SAP 練習問題一覧 › 問題
SAP新しいソリューションのための設計

グローバルな小売企業が、AWS上に新しいエンタープライズ分析基盤を構築しています。同社の事業構造と要件は以下の通りです。 【事業構造】 - 本社分析チーム:us-east-1の専用AWSアカウント(アカウントHQ)で全社データを横断分析 - 北米部門:アカウントNA(us-east-1)、1日3TBのトランザクションデータを生成 - EMEA部門:アカウントEU(eu-west-1)、1日2TBのトランザクションデータを生成 - APAC部門:アカウントAP(ap-northeast-1)、1日2TBのトランザクションデータを生成 【分析要件】 - 本社の中央分析チームは、全3リージョンのデータを単一のSQLクエリでJOINして分析できること(例:全リージョンの売上をリージョン別に集計する複雑なクエリ) - 各部門の分析チームは、自部門のデータのみアクセスできること(他部門の生データへのアクセス不可) - トランザクション発生から1時間以内にデータがクエリ可能な状態になること 【コスト・運用要件】 - ストレージコストの重複を避けること(同一データを複数箇所に物理的に保持しない) - 計算(コンピュート)コストを各チーム(部門別・本社別)のAWSアカウントに帰属できること - 3リージョンが同時稼働するピーク時の分析クエリ負荷に対応できること - ソリューションの運用管理の複雑さを最小化すること 最もこれらの要件を満たすアーキテクチャはどれですか?

A
各部門のAWSアカウント(NA・EU・AP)にAmazon Redshift RA3クラスターをデプロイして「プロデューサー」とし、本社アカウントHQにもRA3クラスター(「コンシューマー」)を構築する。クロスアカウント・クロスリージョンのRedshift Data Sharing(データ共有)を有効化し、各部門クラスターのデータベースオブジェクトを本社クラスターに共有する。データはプロデューサーのRA3マネージドストレージにのみ物理的に存在し、コンシューマーはコピーなしでリモート参照できる。本社クラスターから複数の共有データベースをJOINする単一SQLで全社横断分析を実行する。各部門チームは自部門クラスターへのアクセスのみRedshiftのGRANT権限で許可する。
✓ 正解
RA3ノード + Data Sharingでストレージ重複なし(プロデューサーのRA3 Managed Storageのみ)、クロスアカウント・クロスリージョン対応、コスト帰属自然化、複数DBのクロスJOIN、Grant権限によるアクセス制御をすべて実現できます。
B
全部門のデータをAmazon Kinesis Data Firehose経由でアカウントHQのus-east-1中央S3バケットに集約し、単一の大型Redshiftクラスター(ra3.16xlarge×2ノード)にCOPYコマンドで15分ごとにロードする。行レベルセキュリティ(RLS:Row-Level Security)ポリシーで部門ごとのデータアクセスを制限し、Concurrency Scaling(コンカレンシースケーリング)でピーク負荷を吸収する。コスト帰属はRedshiftのクエリ実行ログとCloudWatch Metricsを事後分析して算出する。
全部門データを中央に集約する方式はデータを物理的に複製するため「ストレージ重複なし」要件違反。全部門計算負荷が1クラスターに集中し部門別コスト帰属が困難、単一障害点リスクも発生します。
C
各部門のデータをそれぞれのAWSアカウント内のS3バケットに保存し、アカウントHQでAmazon Athenaを使用してクロスアカウントクエリを実行する。AWS Lake Formationのデータフィルター機能で部門ごとのアクセス制御を管理する。本社の中央分析チームはAthena Federated Queryで複数のS3バケットのデータをJOINし、AWSコスト配分タグとコスト配分レポートでアカウントごとのコストを追跡する。
S3 + Athenaの構成は有効ですが、大規模多テーブルJOINや複雑集計クエリのパフォーマンスが劣る場合があり、完全な要件充足に不十分です。
D
各部門のAWSアカウントにAmazon Redshift DC2クラスターをデプロイし、AWS Glue ETLジョブで1時間ごとにデータを抽出してアカウントHQの中央S3バケットにParquet形式でエクスポートする。アカウントHQのRedshiftクラスターはRedshift Spectrumの外部テーブルとしてS3上のデータを参照して部門横断クエリを実行する。各部門のS3エクスポートデータはS3バケットポリシーで部門ごとのアクセスを制御する。
DC2ノードはData Sharing非サポート。Glue ETLによる定期エクスポートはデータ物理複製であり「ストレージ重複なし」要件に違反します。

解説

RA3ノードとRedshift Data Sharingがすべての要件を同時に満たします。 ①ストレージ重複なし:データはプロデューサーのRA3マネージドストレージ(内部はS3ベース)にのみ物理的に存在し、コンシューマークラスターはデータをコピーせずリモート参照するため重複が発生しません。 ②クロスアカウント・クロスリージョン対応:RA3ノードはアカウントをまたいだリージョン間のデータ共有をネイティブサポートします。 ③コスト帰属:プロデューサーはストレージコスト、コンシューマーは計算コストをそれぞれ独立したAWSアカウントで負担するため、自然な形でコスト帰属が実現します。 ④単一SQL:コンシューマークラスターから複数の共有データベースへのクロスデータベースJOINを1つのSQLで実行可能です。 ⑤アクセス制御:RedshiftネイティブのGRANT/REVOKE権限管理で部門別アクセスを制御でき、Lake Formationなどの追加サービスが不要です。 選択肢Bの全部門のデータをAmazon Kinesis Data Firehose経由でアカウントHQの中央S3バケットに集約し、単一の大型Redshiftクラスターにコピーロードする方法は、データを物理的に複製するため「ストレージ重複なし」要件に違反します。全部門の計算負荷が1つのクラスターに集中するため部門別コスト帰属が困難であり、単一障害点のリスクも生じます。 選択肢Cの各部門のデータをそれぞれのAWSアカウント内のS3バケットに保存し、アカウントHQでAmazon Athenaを使用してクロスアカウントクエリを実行する方法は、大規模な多テーブルJOINや複雑な集計クエリのパフォーマンスが劣る場合があります。 選択肢Dの各部門のAWSアカウントにAmazon Redshift DC2クラスターをデプロイし、AWS Glue ETLジョブで1時間ごとにデータをParquet形式でエクスポートする方法は、DC2ノードはRedshift Data Sharingをサポートしていません。Glue ETLによる定期的なS3エクスポートはデータの物理的な複製であり「ストレージ重複なし」要件に違反します。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでSAPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← SAP の問題一覧に戻る