AWS認定資格 WEB問題集&徹底解説
AIプラクティショナー
AWSサービスの一つであるAmazon Redshiftはどんな内容なのでしょうか?また、AWS認定資格のAIプラクティショナー(AIF)に合格するためには、サービスのどんなポイントを押さえておけばよいのでしょうか?
ここでは、そんなあなたの疑問に回答していきたいと思います
1. サービス概要
Amazon Redshiftは、ペタバイト規模のデータウェアハウス(DWH)を実現するフルマネージドのMPP(Massively Parallel Processing)型列指向データベースです。大量の構造化・半構造化データに対するOLAP(オンライン分析処理)クエリを高速実行し、BIツールやデータ分析基盤の中核を担います。
2023年以降はRedshift Serverlessも提供され、クラスター管理なしでアドホック分析から大規模DWHまで対応できます。Aurora MySQLとのゼロETL統合により、オペレーショナルDBのデータをリアルタイムに分析基盤へ連携できます。
2. 主な特徴と機能
2.1 列指向ストレージとMPP
データを列単位で圧縮保存し、分析クエリに必要な列のみをスキャン。スライス(コンピュートノードの並列処理単位)でクエリを分散実行し、高スループットを実現。
2.2 クラスター構成
- リーダーノード: SQLクエリの解析・実行計画作成・コンピュートノードへの配布・結果集約を担当。
- コンピュートノード: 実際のデータストレージとクエリ実行。RA3ノード(管理ストレージ分離、S3バックアップ)が現在の標準。
2.3 Redshift Serverless
クラスター管理不要。RPU(Redshift Processing Unit)単位で自動スケール。断続的なワークロード・アドホック分析・開発環境に最適。
2.4 Redshift Spectrum
S3上のデータ(Parquet・ORC・CSV等)に対してRedshiftから直接SQLクエリ実行。データをRedshiftクラスターにロードせずに分析可能。外部テーブル定義が必要。
2.5 Concurrency Scaling(同時実行スケーリング)
クエリ同時実行数が急増した際、追加クラスターを自動起動してスループットを維持。無料クレジット(1日あたり1時間)が付与される。
2.6 マテリアライズドビュー
頻繁に使われる複雑なクエリ結果をキャッシュ。自動またはスケジュール更新が可能で繰り返し分析を高速化。
2.7 ゼロETL統合
Aurora MySQL・RDS MySQLからRedshiftへ、ETLパイプライン不要でほぼリアルタイムにデータを同期(2024年GA)。
2.8 データ共有(Data Sharing)
クラスター間・アカウント間でデータコピーなしにリアルタイムにRedshiftデータを共有。データコンシューマーが独立したコンピュートで読み取りクエリを実行。
3. アーキテクチャおよび技術要素
- データをS3・RDS・DynamoDB等からCOPYコマンドまたはDataSyncでRedshiftにロード。
- RA3ノードはS3をマネージドストレージとして使用し、コンピュートとストレージを分離。
- MPP: クエリをスライスに分割し、各コンピュートノードが並列実行。
- Redshift SpectrumでクラスターにロードせずにS3データを直接クエリ。
- VPC内にクラスターを配置。Enhanced VPCルーティングでVPC経由のデータ転送(セキュリティ強化)。
4. セキュリティと認証・認可
- VPC内配置: プライベートサブネットにクラスターを配置しセキュリティグループで制御。
- 暗号化: KMSまたはHSM(CloudHSM)によるクラスター全体の暗号化(有効化はクラスター作成時)。
- IAM認証: IAM一時認証情報でRedshiftに接続可能(パスワードレス)。
- Column Level Security / Row Level Security: 列・行レベルのアクセス制御でデータガバナンスを強化。
- 監査ログ: ユーザーアクティビティログ・接続ログ・ユーザーログをS3に出力。CloudTrailでAPIコールを監査。
5. 料金形態
- プロビジョンドクラスター: ノードタイプ・数と稼働時間に課金。Reserved Instanceで最大75%割引。
- Redshift Serverless: RPU時間(秒単位)で課金。アイドル時はコスト0。
- ストレージ(RA3): マネージドストレージ(S3バックエンド)のGB/月課金。
- Redshift Spectrum: スキャンしたS3データ量(TB)に課金(Athenaと同様)。
6. よくあるアーキテクチャ・設計パターン
- データレイク+DWH: S3にRAWデータを保管(データレイク)→GlueでETL→Redshiftにロード→BI(QuickSight)で可視化。Redshift Spectrumでコールドデータは直接S3クエリ。
- ゼロETLリアルタイム分析: Aurora MySQL/RDS → Redshiftゼロエ統合でOLTPデータをリアルタイムDWHに反映。
- マルチクラスタ共有: Data Sharingで本番クラスターのデータをレポート用・ML用クラスターへコピーなしで共有。
7. 設定・デプロイ手順(ハンズオン例)
- Redshiftコンソールで「クラスターの作成」→ノードタイプ(RA3.xlplus等)・ノード数・VPC・暗号化を設定。
- データをS3にアップロードし、COPY コマンドでRedshiftにロード。
- クエリエディタv2でSQLを実行してデータを分析。
- Redshift Spectrum用の外部スキーマ・外部テーブルを定義してS3データを直接クエリ。
- QuickSightにRedshiftを接続してダッシュボードを作成。
8. 試験で問われやすいポイント
8.1 RedshiftとRDSの違い
- Q: OLTPにはRDS、分析(OLAP)にはどれを使うか?
A: Amazon Redshift(MPP型DWH、列指向、大規模集計クエリに最適)。RDSはトランザクション処理向け。
8.2 Redshift Spectrum
- Q: RedshiftクラスターにデータをロードせずにS3データを分析するには?
A: Redshift Spectrumで外部テーブルを定義し、S3データをSQLで直接クエリ(スキャンデータ量課金)。
8.3 Redshift Serverless
- Q: Redshift Serverlessが適するユースケースは?
A: 断続的なアドホック分析・開発環境・負荷が予測困難なワークロード。クラスター管理不要でRPU時間課金。
8.4 同時実行スケーリング
- Q: Redshiftのクエリ同時実行数が急増した場合の対策は?
A: Concurrency Scalingを有効化。追加クラスターが自動起動してクエリをさばく。1日1時間の無料クレジットあり。
8.5 セキュリティ
- Q: Redshiftクラスターのデータを暗号化するには?
A: クラスター作成時に暗号化を有効化(KMSまたはHSM)。後から変更する場合はスナップショットからの再作成が必要。 - Q: Enhanced VPCルーティングとは?
A: Redshiftとデータソース間のトラフィックをVPC経由に強制する機能。インターネット経由を排除しセキュリティ向上。