AWS Glue と Athena で分析用データを準備しクエリする

S3 上の CSV データを Glue Crawler でデータカタログに登録し、Athena で SQL クエリを実行します。さらに CTAS で Parquet 形式に変換して、スキャン量を抑えた高速・低コストな分析基盤を体験します。

中級50Azure 実環境

ラボ概要

S3 に置いた CSV データを AWS Glue のデータカタログに自動登録し、Amazon Athena から標準 SQL でクエリします。最後に CTAS で Parquet 形式に変換し、スキャン量を抑えた効率的な分析データレイクの作り方を学びます。サーバーを一切立てずに、ファイルに対して直接 SQL を実行できる「サーバーレス分析」の流れを体験できます。

学習目標

  • S3 を分析データのデータレイクとして使い、CSV データを配置する
  • AWS Glue データベースとクローラを作成し、S3 のデータを自動でカタログ化する
  • Amazon Athena でカタログのテーブルに対して SQL クエリを実行する
  • CTAS(CREATE TABLE AS SELECT)で CSV を列指向の Parquet に変換し、パーティション分割する
  • 変換前後でスキャンするデータ量とクエリ性能の違いを理解する

前提

  • 学習者は cloud_user ロールで東京リージョンのコンソールにサインイン済みです。
  • 本ラボのリソース(S3 バケット、Glue データベース/テーブル、Athena のクエリ結果)はすべてラボ内で自分で作成します。事前構築は不要です。
  • Glue クローラ用の IAM ロールはクローラ作成時にコンソールが自動で作成します(cloud_user には IAM ロール/ポリシーの作成権限があります)。

ラボの構成

  1. 1データレイク用の S3 バケットを作成する
  2. 2サンプル CSV データをアップロードする
  3. 3Glue データベースを作成する
  4. 4Glue クローラを作成して実行する
  5. 5作成されたテーブルを確認する
  6. 6Athena で初回クエリを実行する(結果の出力先を設定)
  7. 7集計クエリで分析する
  8. 8CTAS で Parquet に変換しパーティション分割する(分析用データの準備)
  9. 9変換後のテーブルをクエリして効果を確認する
  10. 10動作確認
  11. 11完了チェックリスト
  12. 12後片付け

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

構成図

構成図

参考リソース

参考リンク

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

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

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