AWS Glue の REST API コネクタ、VPC 接続・フィルタプッシュダウン・パーティション読み込みに対応したよ!
こんにちは、しぃちゃんだよ!今日は AWS Glue の地味だけど実務でめちゃくちゃ効いてくるアップデートを紹介するね!
AWS What's Newなにが発表されたの?
AWS の What's New から。AWS Glue の REST API コネクタが、次の 3 つの新機能に対応したよ。
- VPC 接続のサポート
- フィルタプッシュダウン
- パーティションサポート
REST API コネクタは、専用の AWS Glue コネクタを持たない独自システムや新しいプラットフォームでも、REST ベースの API さえ公開していればデータを取り込める仕組み。今回のアップデートで、その実用性がぐっと上がったよ。
今までどうだったの?
これまでの REST API コネクタは、コードを書かずに ETL パイプラインを組めるのが強みだったけど、次のような制約があったの。
- プライベートサブネットや VPN、AWS PrivateLink 経由のデータソースには直接つなげず、通信を公開インターネット経由にせざるを得なかった
- クエリの絞り込み条件を API 側に渡す仕組みがなく、必要なレコードだけでなく余分なデータまで転送してしまっていた
- 大規模でページネーションされた API からの取り込みは、並列化の仕組みがなく時間がかかっていた
これで何が変わるの?
今回の 3 つの対応で、REST API コネクタは本番のデータ基盤にも組み込みやすくなったよ。
- VPC 接続のおかげで、プライベートサブネットや VPN、AWS PrivateLink の先にあるデータソースへ、トラフィックを公開インターネットに晒さずに安全に接続できる
- フィルタプッシュダウンで、クエリの絞り込み条件を API ネイティブなパラメータに変換して送るから、条件に合うレコードだけがソースから転送されるようになり、データ転送コストとジョブの実行時間が減る
- パーティションサポートで、大規模データセットをフィールド単位やレコード数単位で分割して複数の Spark ワーカーに割り振れるから、ページネーションされた大量データの取り込みが並列化されて速くなる
社内システムや外部 SaaS など、専用コネクタが無い REST API のデータを本番パイプラインに組み込みたいチームには、まさに欲しかったアップデートだと思うな。
深く潜ってみよう
今回の機能は、AWS Glue が使えるすべての AWS 商用リージョンで利用できるよ。パーティション分割の戦略は、フィールド単位・レコード数単位から選べるみたい。設定の詳しい手順は REST API コネクタのドキュメント にまとまっているから、実際に組むときはそちらを確認してね。
まとめ
- AWS Glue の REST API コネクタが VPC 接続・フィルタプッシュダウン・パーティションサポートに対応
- VPC 接続で、プライベートサブネットや PrivateLink の先のデータソースに安全にアクセス
- フィルタプッシュダウンで、必要なレコードだけ転送してコストと時間を削減
- パーティションサポートで、大規模 API データの取り込みを並列化して高速化
- 対応リージョンは AWS Glue が使えるすべての AWS 商用リージョン
専用コネクタが無い REST API のデータソースを、本番の ETL パイプラインにきちんと組み込みたい人にぴったりのアップデートだよ!