Glue で S3 のデータを Redshift にロードする

AWS Glue Studio のビジュアル ETL ジョブを使い、Amazon S3 に置いた CSV データを Amazon Redshift(プロビジョンド・ra3.large 2ノード)のテーブルへロードする一連の流れを、東京リージョンのコンソール操作だけで体験します。Glue が Redshift へ書き込む際に必要となる S3 ステージング領域と IAM ロールの構成まで含め、サーバーレス ETL の基本パターンを手を動かして学びます。

中級60Azure 実環境

ラボ概要

このラボでは、Amazon S3 に置いた CSV データを AWS Glue Studio のビジュアル ETL ジョブで読み取り、Amazon Redshift(プロビジョンド・ra3.large 2ノード)のテーブルへロードします。S3・IAM ロール・Redshift クラスター・Glue 接続・Glue ジョブを自分の手で順番に組み立て、サーバーレス ETL の基本パターンを体験します。

Glue は Redshift へ書き込む際、内部で S3 を経由して COPY コマンドでロードします。そのため「Glue が読み書きする S3 ステージング領域」と「Redshift がそのステージング領域を読むための IAM ロール」が必要になります。本ラボではここまで含めて構成します。

学習目標

  • S3 にデータレイクの入力データ(CSV)とステージング用フォルダを配置する
  • Glue が S3 と Redshift にアクセスするための IAM ロールを作成する
  • Redshift が S3 ステージング領域を読み書きするための IAM ロールを作成する
  • Amazon Redshift プロビジョンドクラスター(ra3.large・2ノード)を作成する
  • Glue から Redshift へ接続する「接続(Connection)」を VPC 内に構成する
  • Glue Studio のビジュアル ETL ジョブで S3 → Redshift のロードを実行し、結果を確認する

前提

  • フェデレーションコンソールに cloud_user で既にサインインしています(追加のサインイン不要)。
  • すべての操作は東京リージョン(ap-northeast-1)で行います。IAM のみグローバルサービスです。
  • 既定の VPC(default VPC)とそのサブネットを利用します。

ラボの構成

  1. 1S3 バケットを作成して入力データとステージング領域を置く
  2. 2Glue 用の IAM ロールを作成する
  3. 3Redshift 用の IAM ロールを作成する
  4. 4Amazon Redshift クラスターを作成する
  5. 5Redshift にロード先テーブルを作成する
  6. 6セキュリティグループ・S3 用 VPC エンドポイント・Glue 接続(Connection)を構成する
  7. 7Glue Studio のビジュアル ETL ジョブを作る
  8. 8ジョブを実行してロードする
  9. 9動作確認
  10. 10完了チェックリスト
  11. 11後片付け

詳細な手順は、ラボ開始後に画面内のガイドとして表示されます。

構成図

構成図

参考リソース

参考リンク

このラボが対応する試験の模擬問題集

本番形式の問題で理解度を確認できます。各試験とも先頭 15 問は無料です。

DEA-C01AWS Data Engineer – Associate練習テスト 4 回・全 200