AWS Glue
- 区分
- 人気
- 提供開始
- 2016 年
データの抽出 / 変換 / ロードを自動化するサーバーレス ETL サービス
何ができるか
AWS Glue は、さまざまなデータソースからデータを抽出し、分析に適した形式に変換して、データウェアハウスやデータレイクにロードする一連の処理 (ETL) を自動化するサーバーレスサービスです。サーバーの構築や管理が不要で、データカタログ機能によりデータの所在やスキーマ (構造) を自動的に検出 / 管理できます。Apache Spark ベースの処理エンジンを内蔵しており、大規模データの変換処理を並列で高速に実行します。
どのような場面で使うか
S3 に蓄積された生データの形式変換とデータレイクへの統合、複数のデータベースやアプリケーションからのデータ統合パイプラインの構築、Redshift や Athena で分析する前のデータクレンジングと正規化、ログデータの Parquet 形式への変換によるクエリコスト最適化など、データの前処理と統合が必要な場面で幅広く利用されています。
身近な例え
食品加工工場に例えるとわかりやすいでしょう。農家 (データソース) から届く野菜や果物 (生データ) は、形も大きさもバラバラです。加工工場 (Glue) では、洗浄 / カット / パッケージングを自動で行い、スーパーの棚 (データウェアハウス) にきれいに並べられる状態にします。工場の設備は使った時間だけ料金がかかり、稼働していないときの維持費はゼロです。
Glue とは
AWS Glue は、2017 年に登場したサーバーレスのデータ統合サービスです。ETL とは Extract (抽出) / Transform (変換) / Load (ロード) の略で、異なるシステムに散在するデータを収集し、分析しやすい形に整えて格納する処理を指します。従来の ETL ツールではサーバーの構築 / 運用やジョブスケジューリングの設定に多大な労力が必要でしたが、Glue はこれらをすべて AWS が管理するため、開発者はデータ変換のロジックに集中できます。
データカタログ
Glue の中核機能の一つがデータカタログです。クローラーと呼ばれる機能が S3、RDS、Redshift などのデータソースを自動的にスキャンし、テーブル定義やスキーマ情報をカタログに登録します。このカタログは Athena、Redshift Spectrum、EMR など他の AWS 分析サービスからも参照でき、データの所在と構造を一元管理するメタデータストアとして機能します。データの追加や変更があれば、クローラーが差分を検出してカタログを自動更新します。
ETL ジョブの仕組み
Glue の ETL ジョブは Apache Spark をベースとした分散処理エンジンで動作します。Python (PySpark) または Scala でジョブスクリプトを記述でき、Glue Studio のビジュアルエディターを使えばコードを書かずにドラッグ & ドロップで ETL パイプラインを構築することも可能です。ジョブ実行時には必要なコンピューティングリソースが自動的に割り当てられ、処理完了後に解放されます。料金は DPU (Data Processing Unit) の使用時間に基づく従量課金です。
ジョブスケジューリングとワークフロー
Glue にはジョブの実行スケジュールを管理するスケジューラーと、複数のジョブを連結するワークフロー機能が組み込まれています。cron 式でジョブの定期実行を設定したり、前段のジョブが成功した場合にのみ次のジョブを実行する依存関係を定義できます。トリガー機能を使えば、S3 へのファイル到着をきっかけに ETL ジョブを自動起動するイベント駆動型のパイプラインも構築できます。
はじめかた
Glue を使い始めるには、まず Glue コンソールでクローラーを作成し、S3 バケットなどのデータソースを指定して実行します。クローラーがデータを検出してカタログにテーブルを登録したら、Glue Studio でビジュアル ETL ジョブを作成します。ソース (入力)、変換 (フィルタリングやカラム変更)、ターゲット (出力先) をノードとして配置し、接続するだけで ETL パイプラインが完成します。テスト実行で結果を確認し、問題なければスケジュールを設定して定期実行に移行します。
注意点
- DPU の使用時間に基づく従量課金のため、大量データの変換処理ではコストが増加する。開発 / テスト時は小さなデータセットで検証すること
- クローラーの実行頻度が高すぎるとコストが増加する。データ更新頻度に合わせて適切なスケジュールを設定すること
- Glue Studio のビジュアルエディターはノーコードで ETL を構築できるが、複雑な変換ロジックが必要な場合は PySpark スクリプトの直接記述が適している
利用できるリージョン
AWS Glue を利用できるリージョンは 37 か所です (2026-10-09 時点)。
アジアパシフィック:香港、台北、東京、ソウル、大阪、ムンバイ、ハイデラバード、シンガポール、シドニー、ジャカルタ、メルボルン、マレーシア、ニュージーランド、タイ
北米:カナダ (中部)、カナダ西部 (カルガリー)、メキシコ (中部)、米国東部 (バージニア北部)、米国東部 (オハイオ)、米国西部 (北カリフォルニア)、米国西部 (オレゴン)
南米:サンパウロ
欧州:フランクフルト、チューリッヒ、ストックホルム、ミラノ、スペイン、アイルランド、ロンドン、パリ
AWS 欧州ソブリンクラウド:ドイツ
中東:イスラエル (テルアビブ)、アラブ首長国連邦、バーレーン
アフリカ:ケープタウン
AWS GovCloud (米国):AWS GovCloud (米国東部)、AWS GovCloud (米国西部)
参考資料 (AWS 公式)
本ページの一次情報は AWS 公式サイトと公式ドキュメントです。最新の仕様と料金は次の公式ページで確認できます。
本ページと公式ドキュメントの記述が食い違う場合は、公式ドキュメントを正としてください。