[新機能] Amazon SageMaker Catalog がアセットメタデータを Apache Iceberg テーブルとしてエクスポート可能になりました   #AWSreInvent

[新機能] Amazon SageMaker Catalog がアセットメタデータを Apache Iceberg テーブルとしてエクスポート可能になりました #AWSreInvent

2025.12.03

クラウド事業本部の石川です。Amazon SageMaker Catalog がカタログに登録されたアセットのメタデータをAmazon S3 Tables上のテーブルとしてエクスポートし、Amazon Athena や SageMaker Unified Studio などから標準 SQL でクエリできるようになりました。

https://aws.amazon.com/jp/about-aws/whats-new/2025/12/sagemaker-catalog-asset-metadata-queryable-dataset/

データカタログの分析が可能になる!

データカタログを運用していると、以下のような疑問が日々発生します。

  • 先月登録されたアセットは何件あるか?
  • 「機密」に分類されているアセットはどれか?
  • ビジネス説明(business_description)が未入力のアセットはどれか?

従来、これらの問いに答えるには、SageMaker APIを呼び出してメタデータを抽出し、独自の ETL パイプラインを構築、メタデータを抽出・変換・集計する必要がありました。今回のアップデートにより、カタログメタデータが自動的に Apache Iceberg テーブルとして Amazon S3 Tables に出力されるようになり、標準 SQL だけでこれらの分析が可能になります。

機能概要

エクスポート先と形式

カタログのアセットメタデータは Apache Iceberg テーブル形式で Amazon S3 Tables に出力されます。出力先は aws-sagemaker-catalog バケット配下の asset_metadata.asset テーブルとなり、SageMaker Unified Studio の Data タブからも確認できます。

含まれるメタデータ

エクスポートされるテーブルには以下の情報が含まれます。

カテゴリ 含まれるフィールド例
技術メタデータ resource_id, resource_type, resource_type_enum, account_id
ビジネスメタデータ asset_name, business_description, extended_metadata
所有権情報 extended_metadata['owningEntityId'](プロジェクト ID など)
タイムスタンプ asset_created_time, snapshot_time

データ更新頻度とパーティション

メタデータのエクスポートは 1 日 1 回、リージョンごとのローカル時間の深夜帯に実行されます。データは snapshot_date でパーティショニングされており、タイムトラベルクエリによる過去時点のカタログ状態の参照も可能です。

料金体系

本機能自体は追加料金なしで利用できます。課金が発生するのは S3 Tables のストレージ料金と Amazon Athena のクエリ料金のみです。ストレージコストは S3 Tables のレコード有効期限ポリシーで制御可能です。

技術的特徴

S3 Tables の採用

Apache Iceberg テーブルとして出力することで、スキーマ進化やタイムトラベルといった高度な機能が標準でサポートされます。また、S3 Tables との組み合わせにより、Iceberg REST Catalog エンドポイント経由で外部の BI ツールからも接続可能です。

AWS Datasets スキーマ準拠

エクスポートされるテーブルは AWS Datasets スキーマ規約に準拠しています。これにより、S3 Access Logs や CloudWatch メトリクスとの JOIN が可能となり、アセットのアクセス状況やパフォーマンス分析と組み合わせた高度な分析が実現できます。

日次スナップショットによる履歴参照

snapshot_time による日次スナップショットにより、カタログの変遷を時系列で追跡できます。メタデータガバナンスの観点から、いつ・誰が・どのような変更を行ったかを後から検証できることは非常に重要です。

制約事項

運用にあたり、いくつかの制約を把握しておく必要があります。

ドメイン制限

現在のリリースでは、AWS アカウントおよびリージョンあたり 1 つのドメインでのみエクスポートを有効化できます。一度あるドメインで無効化すると、同一アカウント・リージョン内の別ドメインでは有効化できなくなります。

暗号化設定の固定

エクスポートされたアセットテーブルの暗号化設定は、有効化後に変更できません。KMS キーを使用する場合は、初回有効化時に適切な設定を行う必要があります。

クエリ時の注意点

snapshot_time フィルタなしでクエリを実行すると、すべての履歴スナップショットを読み込むことになり、レコードの重複やパフォーマンス低下を招きます。常に日付フィルタを指定してください。

-- 推奨: 日付フィルタを指定
SELECT * FROM asset_metadata.asset
WHERE DATE(snapshot_time) = CURRENT_DATE;

-- 非推奨: フィルタなし(全履歴を読み込み)
SELECT * FROM asset_metadata.asset;

利用可能リージョン

本機能は SageMaker Catalog がサポートされているすべての AWS リージョンで利用可能です。

最後に

今回のアップデートにより、データカタログのメタデータ分析が容易になりました。これまで「カタログ運用状況のレポーティング」は後回しにされがちでしたが、SQL だけで完結できるようになったことで、データガバナンスの PDCA サイクルを回しやすくなります。

Apache Iceberg × S3 Tables という組み合わせは、AWS がデータレイク基盤として推進している方向性とも合致しており、今後さらに活用の幅が広がることが期待されます。

データエンジニアリングの観点からは、カタログメタデータと S3 Access Logs、CloudWatch メトリクスを組み合わせた データ可観測性(Data Observability)ダッシュボードの構築などが次のステップとして考えられます。

この記事をシェアする

FacebookHatena blogX

関連記事