翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SageMaker Feature Store オフラインストアのデータ形式
Amazon SageMaker Feature Store は、オフラインストアの AWS Glue および Apache Iceberg テーブル形式をサポートしています。新しい特徴量グループを作成するときにテーブル形式を選択できます。 AWS Glue はデフォルトの形式です。
Amazon SageMaker Feature Store のオフラインストアデータは、アカウント内の Amazon S3 バケットに保存されます。PutRecord
を呼び出すと、データは 15 分以内に Amazon S3 にバッファされ、バッチ処理され、書き込まれます。Feature Store は、オフラインストアにデータを書き込む際に Parquet ファイル形式のみをサポートします。具体的には、オフラインストアにデータが書き込まれると、データは Amazon S3 バケットから Parquet 形式で取得できます。各ファイルには複数の Record
を含めることができます。
Iceberg 形式の場合、Feature Store は、オフラインストアデータの保存に使用しているのと同じ Amazon S3 バケットにテーブルのメタデータを保存します。metadata
プレフィックスの下にあります。
Feature Store は、DescribeFeatureGroupAPI呼び出しで から取得できる OfflineStoreConfig.S3StorageConfig.ResolvedOutputS3Uri フィールドも公開します。これは、特定の特徴グループのファイルが書き込まれる S3 のパスです。
オフラインストアでレコードが保持される場合、Feature Store は各レコードに次の追加フィールドを加えます。
-
api_invocation_time - サービスが
PutRecord
またはDeleteRecord
の呼び出しを受信した時点のタイムスタンプ。マネージド型の取り込み (Data Wrangler など) を使っている場合、これはデータがオフラインストアに書き込まれた時点のタイムスタンプです。 -
write_time - オフラインストアにデータが書き込まれた時点のタイムスタンプ。タイムトラベル関連クエリの作成に使うことができます。
-
is_deleted - デフォルトは
False
です。DeleteRecord
が呼び出されると、オフラインストアでは新しいRecord
がRecordIdentifierValue
に挿入され、True
に設定されます。
Amazon SageMaker Feature Store オフラインストアURI構造
以下の例の amzn-s3-demo-bucket
は、アカウント内の Amazon S3 バケット、
はプレフィックスの例、example-prefix
はアカウント ID、111122223333
はリージョン、AWS リージョン
は特徴量グループの名前を表します。feature-group-name
AWS Glue テーブル形式
AWS Glue テーブル形式を使用して保存されたオフラインストア内のレコードは、イベント時間ごとに時間単位のパーティションに分割されます。分割スキームは設定できません。次のURI構造は、 形式を使用した AWS Glue Parquet ファイルの編成を示しています。
s3://amzn-s3-demo-bucket/
example-prefix
/111122223333
/sagemaker/AWS リージョン
/offline-store/feature-group-name
-feature-group-creation-time
/data/year=year
/month=month
/day=day
/hour=hour
/timestamp_of_latest_event_time_in_file
_16-random-alphanumeric-digits
.parquet
次の例は、
が feature-group-name
customer-purchase-history-patterns
であるファイルの Parquet ファイルの出力場所を示しています。
s3://amzn-s3-demo-bucket/
example-prefix
/111122223333
/sagemaker/AWS リージョン
/offline-store/customer-purchase-history-patterns-1593511200/data/year=2020/month=06/day=31/hour=00/20200631T064401Z_108934320012Az11.parquet
Iceberg テーブル形式
Iceberg テーブル形式で保存されたオフラインストアのレコードは、イベント時間ごとに日にち単位で分割されます。分割スキームは設定できません。次のURI構造は、Iceberg テーブル形式で保存されたデータファイルの編成を示しています。
s3://amzn-s3-demo-bucket/
example-prefix
/111122223333
/sagemaker/AWS リージョン
/offline-store/feature-group-name
-feature-group-creation-time
/data/8-random-alphanumeric-digits
/event-time-feature-name
_trunc=event-time-year
-event-time-month
-event-time-day
/timestamp-of-latest-event-time-in-file_16-random-alphanumeric-digits.parquet
次の例は、
が feature-group-name
customer-purchase-history-patterns
であり、
が event-time-feature-name
EventTime
であるファイルの Parquet ファイルの出力場所を示しています。
s3://amzn-s3-demo-bucket/
example-prefix
/111122223333
/sagemaker/AWS リージョン
/offline-store/customer-purchase-history-patterns-1593511200/data/0aec19ca/EventTime_trunc=2022-11-09/20221109T215231Z_yolTtpyuWbkaeGIl.parquet
次の例は、Iceberg テーブル形式で保存されたデータファイルのメタデータファイルの場所です。
s3://amzn-s3-demo-bucket/
example-prefix
/111122223333
/sagemaker/AWS リージョン
/offline-store/feature-group-name
-feature-group-creation-time
/metadata/