

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 레코드의 TTL (Time to live) 기간
<a name="feature-store-time-to-live"></a>

Amazon SageMaker 특성 저장소는 특정 기간에 도달한 후 TTL 기간을 통해 온라인 저장소에서 레코드를 영구 삭제할 수 있는 옵션을 제공합니다(`TtlDuration`). 레코드의 `EventTime`더하기 `TtlDuration`값에 도달하거나, `ExpiresAt`= `EventTime`\$1 `TtlDuration`에 도달하면 레코드가 만료됩니다. `TtlDuration`을 특성 그룹 수준에서 적용할 수 있습니다.특성 그룹 내의 모든 레코드는 `TtlDuration`기본값으로 특성 그룹 수준에서 적용되거나 개별 레코드 수준에서 적용됩니다. `TtlDuration`이 지정되지 않은 경우 기본값은 `null`이며 덮어쓸 때까지 레코드가 온라인 저장소에 남아 있습니다.

`TtlDuration`을 사용하여 삭제한 레코드는 온라인 저장소에서 영구 삭제되거나 완전히 제거되며 삭제된 레코드는 오프라인 저장소에 추가됩니다. 영구 삭제 및 삭제 모드에 대한 자세한 내용은 Amazon SageMaker API 참조 안내서의 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_feature_store_DeleteRecord.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_feature_store_DeleteRecord.html)섹션을 참조하세요. 레코드가 하드 삭제되면 Feature Store API를 사용하여 즉시 액세스할 수 없게 됩니다.

**중요**  
TTL은 일반적으로 만료된 항목을 며칠 내에 삭제합니다. 테이블의 크기 및 작업 수준에 따라 만료된 항목의 실제 삭제 작업이 달라질 수 있습니다. TTL은 백그라운드 프로세스이므로 TTL을 통해 항목을 만료하고 삭제하는 데 사용되는 용량의 특성은 가변적이지만 무료입니다. DynamoDB 테이블에서 항목을 삭제하는 방법에 대한 자세한 내용은 [작동 방식: DynamoDB TTL (Time to Live)](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/howitworks-ttl.html)을 참조하세요.

`TtlDuration`은 `Unit`, `Value`를 포함하는 딕셔너리여야 합니다.여기서 `Unit`은 '초', '분', '시간', '일' 또는 '주' 값을 포함하는 문자열이어야 하며 `Value`는 1보다 크거나 같은 정수여야 합니다. `TtlDuration`은 `CreateFeatureGroup`, `UpdateFeatureGroup`, `PutRecord`API를 사용하는 동안 적용할 수 있습니다. [https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_feature_group.html#SageMaker.Client.create_feature_group](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_feature_group.html#SageMaker.Client.create_feature_group), [https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/update_feature_group.html](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/update_feature_group.html)및 [https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-featurestore-runtime/client/put_record.html#](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-featurestore-runtime/client/put_record.html#)API에 대한 Python용 SDK (Boto3) 설명서의 요청 및 응답 구문을 참조하세요.
+ `CreateFeatureGroup` 또는 `UpdateFeatureGroup`API를 사용하여 특성 그룹 수준에서 `TtlDuration`을 적용하면 API가 호출된 시점부터 특성 그룹에 추가된 모든 레코드의 `TtlDuration`기본값이 적용된 `TtlDuration`이 됩니다.** `UpdateFeatureGroup` API로 `TtlDuration`을 적용하는 경우 API가 호출되기 전에 생성된 레코드의 경우 이 설정은 `TtlDuration`기본값으로 적용 되지 않습니다.****

  기존 특성 그룹에서 기본값 `TtlDuration`을 제거하려면 `UpdateFeatureGroup` API를 사용하고 `TtlDuration` `Unit` 및 `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
        }
    }
)
```

`DescribeFeatureGroup` API를 사용하여 `TtlDuration`기본값을 볼 수 있습니다.

`GetRecord` 또는 `BatchGetRecord`API를 사용하는 동안 만료 시간 `ExpiresAt`(UTC 시간 ISO-8601 형식)을 보려면 `ExpirationTimeResponse`를 `ENABLED`로 설정해야 합니다. [https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/describe_feature_group.html#describe-feature-group](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/describe_feature_group.html#describe-feature-group), [https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-featurestore-runtime/client/get_record.html#get-record](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-featurestore-runtime/client/get_record.html#get-record)및 [https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-featurestore-runtime/client/batch_get_record.html#batch-get-record](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-featurestore-runtime/client/batch_get_record.html#batch-get-record)API에 대한 Python용 SDK (Boto3) 설명서의 요청 및 응답 구문을 참조하세요.