翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
レコードの有効期限 (TTL)
Amazon SageMaker Feature Store には、有効期限 (TTL) (TtlDuration) を使用して、有効期限に達した後にレコードをオンラインストアから完全に削除するオプションがあります。レコードは、レコードの EventTime に TtlDuration を加えた値、つまり ExpiresAt = EventTime + TtlDuration に達すると期限切れになります。TtlDuration は、特徴量グループレベルで適用して、デフォルトで特徴量グループ内のすべてのレコードに TtlDuration が設定されるようにすることも、個別のレコードレベルで適用することもできます。TtlDuration を指定しない場合、デフォルト値は null となり、レコードは上書きされるまでオンラインストアに残ります。
TtlDuration を使用して削除されたレコードは、完全に削除されるかオンラインストアから完全に削除され、削除されたレコードはオフラインストアに追加されます。完全削除と削除モードの詳細については、「Amazon SageMaker API リファレンスガイド」の「DeleteRecord」を参照してください。レコードがハード削除されると、直ちに 特徴量ストア API でのアクセスができなくなります。
重要
通常、TTL は期限が切れた項目を数日以内に削除します。テーブルのサイズとアクティビティレベルによっては、期限切れの項目の実際の削除オペレーションが異なる場合があります。TTL はバックグラウンドプロセスであることを意図しているため、TTL を介して項目の有効期限切れや削除に使用される容量の性質は可変です (無料)。DynamoDB テーブルから項目を削除する方法の詳細については、「仕組み: DynamoDB の有効期限 (TTL)」を参照してください。
TtlDuration は Unit と Value を含む辞書である必要があり、Unit は、値「秒」、「分」、「時間」、「日」、または「週」を持つ文字列でなければならず、Value は 1 以上の整数である必要があります。TtlDuration は CreateFeatureGroup、UpdateFeatureGroup、PutRecord API を使用するときに適用できます。CreateFeatureGroupUpdateFeatureGroupPutRecord
-
TtlDurationを (CreateFeatureGroupまたはUpdateFeatureGroupAPI を使用して) 特徴量グループレベルで適用すると、適用されたTtlDurationは、API が呼び出された時点から特徴量グループに追加されるすべてのレコードのデフォルトTtlDurationになります。UpdateFeatureGroupAPI を使用してTtlDurationを適用する場合、API が呼び出される前に作成されたレコードに対してはデフォルトのTtlDurationにはなりません。既存の特徴量グループからデフォルトの
TtlDurationを削除するには、UpdateFeatureGroupAPI を使用して、TtlDurationのUnitとValueをnullに設定します。 -
TtlDurationがレコードレベルで (例えばPutRecordAPI を使用して) 適用されると、TtlDurationはそのレコードに適用され、特徴量グループレベルのデフォルトTtlDurationの代わりに使用されます。 -
TtlDurationが特徴量グループレベルで適用された場合、TtlDurationが有効になるまでに数分かかることがあります。 -
オンラインストアがない場合に
TtlDurationを使用すると、「Validation Exception (400)」エラーが表示されます。
次のコード例は、特徴量グループの更新時に TtlDuration を適用する方法を示しています。これにより、API の実行後に特徴量グループに追加されたレコードは、デフォルトでイベント時間の 4 週間後に期限切れになります。
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 } } )
DescribeFeatureGroup API を使用すると、デフォルトの TtlDuration を表示できます。
GetRecord または BatchGetRecord API を使用しているときに有効期限 ExpiresAt を (UTC 時間 ISO-8601 形式で) 表示するには、ExpirationTimeResponse を ENABLED に設定する必要があります。DescribeFeatureGroupGetRecordBatchGetRecord