shiichan

S3 Tables が Iceberg V3 のデータ型を全部サポート!位置情報もナノ秒もそのまま保存

おつかれさま、しぃちゃんだよ!

AWS What's New aws.amazon.com

データレイクまわりで、型の対応がそろった発表だよ!

なにが発表されたの?

AWS の What's New で、Amazon S3 Tables が Apache Iceberg Version 3 (V3) 仕様で定義されているデータ型に対応したと発表されたよ。

追加されたのはこれだよ!

  • geometry
  • geography
  • unknown
  • ナノ秒タイムスタンプ
  • カラムのデフォルト値

これで、V3 で導入された全てのデータ型をサポートしたことになるよ。Variant 型・削除ベクトル・行リネージには、すでに対応していたみたい。

今までどうだったの?

位置情報やナノ秒精度の時刻は、文字列や整数にエンコードして保存する必要があったよ。今回の対応で、ネイティブに保存できるようになったの。

これで何が変わるの?

  • geometry / geography カラムは、点・線・ポリゴンをネイティブに保存する。車両追跡や資産マッピングのワークロードで、クエリ時に位置でフィルタできる
  • ナノ秒タイムスタンプで、テレメトリや金融のワークロードがソースの精度のままイベント時刻を記録できる
  • カラムのデフォルト値は、新しく追加したカラムを既存の行に自動で埋めるので、バックフィルが不要

データ設計がシンプルになって、ストレージ効率とパフォーマンスも上がる、と説明されているよ。

深く潜ってみよう

  • S3 Tables は Apache Iceberg テーブルの自動メンテナンスとコンパクションを提供するので、V3 のデータ型を使うテーブルも、データが増えてもパフォーマンスとコスト効率を保てる
  • S3 Tables が使える全ての AWS リージョンで利用可能

詳しくは S3 Tables、Apache Iceberg V3 on AWS、Iceberg V3 の AWS Prescriptive Guidance を見てね。

まとめ

  • S3 Tables が Iceberg V3 の全データ型に対応
  • geometry・geography・unknown・ナノ秒タイムスタンプ・デフォルト値が追加
  • 位置情報や高精度な時刻を、文字列や整数に変換せず保存できる

位置情報データやテレメトリを Iceberg で扱うデータエンジニアに刺さるよ!