shiichan

VARIANT 型・地理空間データ型・ナノ秒タイムスタンプ ── AWS Glue 6.0 が機能てんこ盛りで登場!

おつかれさま、しぃちゃんだよ!今日は AWS Blog に載っていた、AWS Glue 6.0 の技術解説記事を深掘りするね!

AWS Blog aws.amazon.com

なにが発表されたの?

AWS の Blog に、AWS Glue 6.0 の一般提供開始について詳しく解説する記事が載ったよ。AWS What's New でも同時に告知されているアップデートなんだけど、Blog 版はアーキテクチャや使い方まで踏み込んで書かれているのがポイント。目玉は 30% の価格引き下げと、Apache Iceberg v3 へのフル対応だよ。

今までどうだったの?

これまでの Glue は Iceberg v3 世代の機能に対応しておらず、ランタイムも一世代前の Spark・Python・Scala ベースだったの。半構造化データの読み取りや行単位の更新、空間データの扱いといった面で、今回ほどの表現力は無かったんだって。

これで何が変わるの?

Glue 6.0 は、完全にモダン化されたランタイム(Apache Spark 4.1・Python 3.12・Scala 2.13)の上で、Iceberg v3 の新機能をフルに使えるようにしているよ。

  • VARIANT データ型: 自動シュレッディング付きで、JSON・ログ・イベントデータをスキーマをフラット化せずに保存・クエリできる。従来の文字列型カラムに詰め込むより読み取りが速くなるの
  • geometry / geography データ型: GIS 分析や位置情報インテリジェンス向けに、空間データパイプラインをマネージド Spark 上でそのまま実行できる
  • ナノ秒精度のタイムスタンプ: IoT センサーデータ、科学計算、高頻度の金融ワークロードなど、精度が命の用途に対応
  • UNKNOWN 型: 予期しない・進化していくスキーマを扱えるので、アップストリーム側のスキーマ変更にパイプラインが耐えやすくなる

深く潜ってみよう

Spark 4.1 まわりの新機能も見逃せないよ。Spark 宣言型パイプラインはエンジン側が実行順序と最適化を自動で決めてくれるので、定型的なオーケストレーションコードを書かなくて済むの。Arrow ネイティブの Python UDF / UDTF は、シリアライゼーションのオーバーヘッドをなくして複雑な変換処理の速度を上げてくれるし、Real-Time Mode ならステートレスなストリーミング処理を 1 桁ミリ秒レイテンシで回せるよ。

使い方は既存の API・CLI・SDK・IDE から変わらず、Glue Studio コンソールなら Job Details タブで「Glue 6.0 – Supports Spark 4.1, Scala 2, Python 3」を選ぶだけ。Notebook からは %glue_version マジックコマンドでバージョンを指定できるし、既存ジョブは Spark Upgrade Agent を使った自動アップグレードにも対応しているよ。

料金面では、クローラーと ETL ジョブは時間単位の課金のまま(そのぶん 30% 安くなった)、Data Catalog は最初の 100 万オブジェクトの保存と最初の 100 万アクセスまで無料になっているの。対応リージョンは、AWS Glue が稼働している全リージョンだよ。

まとめ

  • AWS Blog が AWS Glue 6.0 の GA を技術面から詳しく解説してくれたよ
  • Iceberg v3 の VARIANT 型・geometry / geography 型・ナノ秒タイムスタンプ・UNKNOWN 型がまとめて使えるようになったの
  • Spark 宣言型パイプライン・Arrow ネイティブ Python UDF・Real-Time Mode で開発体験も底上げされているよ
  • 既存ジョブは Spark Upgrade Agent でスムーズに 6.0 へ移行できるの
  • 大規模データ基盤を運用しているデータエンジニアには、腰を据えて読んでおきたい技術アップデートだよ!