【図解】AWS Glueってそもそも何?調べて比較して選定を考えた話
こんにちは。アスエネ株式会社でバックエンドエンジニア兼PMをしているハルピンです!
きっかけ
最近、社内でデータの整形処理をどう自動化・効率化するかという議論がありました。その中で候補に挙がったのが、AWS Glueです。
ただ、僕は「Glueって何?」という状態だったので、Glueについて調べ、導入検討の判断軸を整理し、実際に何を採用したかのお話ができればと思っています。
Glueってそもそも何?
Glueは一言で言えば、AWS上でETL(データの整形)処理を自動で行うサービスです

主な機能を整理します。
- クローラー:S3などのファイルを読み取って、データ構造(スキーマ)を自動判別
 - データカタログ:その構造情報を管理・再利用できる“辞書”のような存在
 - ETLジョブ:Pythonなどで変換処理を書いてバッチ実行できる
 - トリガー/サーバレス:決まった条件で起動したり、インフラ準備がいらなかったりする
 

ETLの流れで言うと、こんな役割です
収集(Collect) → 蓄積(Store) → 整形(Transform ←ここがGlue) → 分析・活用
ちなみに、Glueって英語で「のり(糊)」という意味で、「バラバラのデータをくっつけて整える」というイメージです。

「Glue使えば良い!」とはならなかった
Glueの説明だけ見ると、「自動でやってくれるしこれで決まりだ!」と思いました。でも調べていくうちに、実際の導入シーンを考えると、色んな疑問が出てきました。
- 同じことはLambdaでもできる?
 - コスト感がようわからんけど、高くつく?
 - コードはちゃんと管理できる?
 
そこから、「ほんとにGlueがベストなのか?」と改めて考えるようになりました。
比較してみて見えてきたこと
GlueとLambda、どっちで処理するかを選ぶときに、以下のポイントで比べました:
| 観点 | Glue | Lambda | 
|---|---|---|
| データ量 | 大量(GB〜TB)向き | 少量・軽量処理向き | 
| 処理時間 | 最大48時間 | 最大15分まで | 
| 開発性 | GUIベース、CLI連携に工夫必要 | Git・CI/CDと相性◎ | 
| コスト | DPU×時間で課金、高め | 軽量なら安いが回数に注意 | 
| リアルタイム性 | △ 定期バッチ向け | ◎ S3イベントなどに即反応 | 
自分なりの判断軸としては
Glueを使うなら:
- データ量が多くて変換処理が複雑なとき
 - 定期的に決まった時間に処理を回したいとき
 - 処理時間が長くかかっても問題ないとき
 
Lambdaを使うなら:
- ファイル単位で軽めの整形をしたいとき
 - イベントドリブンにすぐ反応させたいとき
 - Gitでコード管理したいとき
 
このように、「Glueは重バッチ向き」「Lambdaは軽量・リアルタイム処理向き」という棲み分けが見えてきました。
また、選定にあたっては単なる機能比較だけでなく、コスト感や扱いやすさ(運用・開発のしやすさ)など、プロジェクトの状況に合わせた総合的な判断が必要になります。
今回はそうした観点も踏まえたうえで、実現度が高く、コスト感に優位性がある選択肢としてLambdaを採用しました!
まとめ
- Glueは「整える」部分を自動化してくれる便利なサービス
 - ただし、Lambdaでも同じことを実現できないかは比較しても良さそう
 
ここまでお読みいただき、ありがとうございます!
最後になりますが、アスエネでは一緒に働くエンジニアを募集しています。
まずは、選考要素のないカジュアル面談も歓迎しています。
僕のPitta(旧:Meety)も記載しておきますね。
人類が未だかつて直面したことのない、地球規模の課題を解決するためのシステム開発は面白いですよ!
関心や共感のある方は、ぜひお話を聞きに来てください!
Discussion