無限ノック › DEA 練習問題一覧 › 問題
DEAデータストアの管理

ある大手小売企業は、同一 AWS アカウント・同一リージョン内に2つの Amazon Redshift クラスター(Cluster-A と Cluster-B)を運用しています。Cluster-A にはデータエンジニアリングチームが管理する集計済みの sales_summary テーブル(約200GB)があります。Cluster-B を使用するビジネスアナリストチームは、この sales_summary テーブルを毎日参照する必要があります。以下の制約があります。 ・データのコピーや S3 への中間エクスポートは避けたい ・ETL パイプラインの追加構築・管理コストを最小化したい ・ビジネスアナリストは Cluster-B から透過的に SQL でクエリしたい この要件を最も効率よく満たすソリューションはどれですか?

A
Cluster-A でデータシェアを作成して Cluster-B をコンシューマーとして追加し、Cluster-B からデータシェア経由でクエリする
✓ 正解
Redshiftデータシェアリングはデータのコピーや移動なしにクラスター間でリアルタイムデータ参照を実現する機能。Cluster-Bから通常SQLでクエリでき、ETLパイプライン不要でS3への中間エクスポートも発生しないため、全制約を満たす最適な手段。
B
AWS Glue ETL ジョブをスケジュールし、Cluster-A から S3 に UNLOAD したデータを Cluster-B に COPY する
AWS Glue ETL + UNLOAD/COPYはS3への中間エクスポートとデータコピーを前提とする手法であり、「データのコピーやS3への中間エクスポートは避けたい」という制約に直接違反する。ETLパイプラインの構築・運用コストも制約に反して増加する。
C
Redshift Spectrum を両クラスターで設定し、共通の S3 バケット上の Parquet ファイルをクエリする
Redshift Spectrumは外部テーブルとしてS3上のデータをクエリする機能であり、RedshiftクラスターのネイティブテーブルをS3を介さずに直接共有する用途には使用できない。S3への事前エクスポートが必要となり制約に違反する。
D
Amazon Athena の Federated Query で Cluster-A の sales_summary を直接クエリし、結果を Cluster-B のビューとして公開する
Amazon AthenaのFederated QueryはRedshiftのデータを参照できるが、Athenaのクエリ結果をRedshift Cluster-BのビューとしてリアルタイムPublishする仕組みはAWSに存在しない。アーキテクチャとして技術的に成立せず、運用上も複雑になる。

解説

Amazon Redshift データシェアリング(Data Sharing)は、同一または異なる Redshift クラスター間でデータをコピーせずにリアルタイム共有できる機能です。 データシェアリングの仕組みは以下の通りです。 ①プロデューサークラスター(Cluster-A)でデータシェアを作成し、共有するテーブルを追加 ②コンシューマークラスター(Cluster-B)をデータシェアの利用者として追加 ③Cluster-B から通常の SQL クエリを実行すると、データシェア経由で sales_summary を参照可能 ④データはコピーされず Cluster-A 上のデータをライブで参照するため、常に最新状態を反映 ETL パイプラインの構築・S3 中間ストレージ・データコピーが不要で、運用コストを大幅に削減できます。 選択肢Bの AWS Glue ETL + UNLOAD/COPY アプローチはデータコピーと S3 中間エクスポートが発生し、制約に反するうえ運用コストも高い。 選択肢Cの Redshift Spectrum は S3 上の外部テーブルをクエリする機能であり、Redshift クラスター間の直接データ共有には使用できない。また S3 への事前エクスポートが必要になる。 選択肢Dの Amazon Athena の Federated Query は Redshift に接続できるが、Athena の結果を Cluster-B のビューとして公開する仕組みは存在せず、アーキテクチャとして成立しない。

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

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

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