レコードの存続期間 (TTL) - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

レコードの存続期間 (TTL)

Amazon SageMaker Feature Store には、存続期間 (TTL) に達した後にオンラインストアからレコードをハード削除するためのオプションがありますTtlDuration。レコードは、レコードの EventTimeTtlDuration を加えた値、つまり ExpiresAt = EventTime + TtlDuration に達すると期限切れになります。TtlDuration は、特徴量グループレベルで適用して、デフォルトで特徴量グループ内のすべてのレコードに TtlDuration が設定されるようにすることも、個別のレコードレベルで適用することもできます。TtlDuration を指定しない場合、デフォルト値は null となり、レコードは上書きされるまでオンラインストアに残ります。

TtlDuration を使用して削除されたレコードは、完全に削除されるかオンラインストアから完全に削除され、削除されたレコードはオフラインストアに追加されます。ハード削除モードと削除モードの詳細については、Amazon SageMaker API リファレンスガイドDeleteRecordの「」を参照してください。レコードがハード削除されると、Feature Store を使用してすぐにアクセスできなくなりますAPIs。

重要

TTL 通常、 は数日以内に期限切れの項目を削除します。テーブルのサイズとアクティビティレベルによっては、期限切れの項目の実際の削除オペレーションが異なる場合があります。TTL はバックグラウンドプロセスであるため、 を介して項目の有効期限が切れたり削除したりするために使用される容量の性質TTLは可変です (ただし無料)。DynamoDB テーブルから項目を削除する方法の詳細については、「その仕組み: DynamoDB Time to Live (TTL)」を参照してください。

TtlDuration は、 Unitと を含むディクショナリUnitである必要があります。ここでValue、 は、「Seconds」、「Minutes」、「Hours」、「Days」、または「Weeks」の値を持つ文字列で、1 以上の整数Valueである必要があります。 は、CreateFeatureGroup、、UpdateFeatureGroup、および PutRecord の使用中に適用TtlDurationできますAPIs。、、および SDKの for Python (Boto3) CreateFeatureGroupドキュメントの リクエストUpdateFeatureGroupとレスポンスの構文を参照してくださいPutRecordAPIs。

  • TtlDuration が特徴量グループレベルで適用される場合 ( CreateFeatureGroupまたは UpdateFeatureGroup を使用APIs)、適用された APIは、 が と呼ばれた時点から特徴量グループに追加されるTtlDurationすべてのレコードのデフォルトTtlDurationになります。TtlDuration で を適用する場合UpdateFeatureGroupAPI、 APIが呼び出される前に作成されたレコードTtlDurationのデフォルトにはなりません

    既存の特徴量グループTtlDurationからデフォルトを削除するには、 を使用し、 TtlDuration Unit UpdateFeatureGroupAPIと Valueを に設定しますnull

  • TtlDuration がレコードレベルで適用される場合 (例えば、 PutRecord を使用API)、TtlDuration期間はそのレコードに適用され、特徴量グループレベルのデフォルト の代わりに使用されますTtlDuration

  • TtlDuration が特徴量グループレベルで適用された場合、TtlDuration が有効になるまでに数分かかることがあります。

  • オンラインストアがない場合に TtlDuration を使用すると、「Validation Exception (400)」エラーが表示されます。

次のサンプルコードは、 の実行後に特徴量グループに追加されたレコードがイベント時間から API 4 週間後にデフォルトで期限切れになるように、特徴量グループの更新TtlDuration中に を適用する方法を示しています。

import boto3 sagemaker_client = boto3.client("sagemaker") feature_group_name = '<YOUR_FEATURE_GROUP_NAME>' sagemaker_client.update_feature_group( FeatureGroupName=feature_group_name, OnlineStoreConfig={ TtlDuration:{ Unit: "Weeks", Value: 4 } } )

を使用してDescribeFeatureGroupAPI、デフォルトの を表示できますTtlDuration

GetRecord または の使用中に有効期限 ExpiresAt (UTC時間 ISO-8601 形式) を表示するには、 ExpirationTimeResponse を に設定BatchGetRecordAPIsする必要がありますENABLEDDescribeFeatureGroup、、および SDKの for Python (Boto3) ドキュメントの のリクエストGetRecordとレスポンスの構文を参照してくださいBatchGetRecordAPIs。