From 9e6d60d0d26333dc6f4b01c65b1607793d4bfcbd Mon Sep 17 00:00:00 2001 From: awstools Date: Tue, 27 Jun 2023 18:25:32 +0000 Subject: [PATCH] feat(client-sagemaker): Introducing TTL for online store records in feature groups. --- .../src/commands/CreateFeatureGroupCommand.ts | 4 + .../DeleteModelBiasJobDefinitionCommand.ts | 2 +- .../src/commands/DeleteModelCommand.ts | 2 +- .../commands/DescribeFeatureGroupCommand.ts | 4 + .../src/commands/SearchCommand.ts | 4 + .../StartEdgeDeploymentStageCommand.ts | 2 +- .../StartInferenceExperimentCommand.ts | 2 +- .../src/commands/UpdateFeatureGroupCommand.ts | 6 + .../client-sagemaker/src/models/models_0.ts | 12 +- .../client-sagemaker/src/models/models_1.ts | 64 ++++++---- .../client-sagemaker/src/models/models_2.ts | 81 ++++--------- .../client-sagemaker/src/models/models_3.ts | 113 ++++++++++++------ .../client-sagemaker/src/models/models_4.ts | 41 +++++++ .../src/protocols/Aws_json1_1.ts | 18 ++- codegen/sdk-codegen/aws-models/sagemaker.json | 95 ++++++++++++++- 15 files changed, 314 insertions(+), 136 deletions(-) diff --git a/clients/client-sagemaker/src/commands/CreateFeatureGroupCommand.ts b/clients/client-sagemaker/src/commands/CreateFeatureGroupCommand.ts index 9a61d97f356b..73a8618a8d24 100644 --- a/clients/client-sagemaker/src/commands/CreateFeatureGroupCommand.ts +++ b/clients/client-sagemaker/src/commands/CreateFeatureGroupCommand.ts @@ -70,6 +70,10 @@ export interface CreateFeatureGroupCommandOutput extends CreateFeatureGroupRespo * KmsKeyId: "STRING_VALUE", * }, * EnableOnlineStore: true || false, + * TtlDuration: { // TtlDuration + * Unit: "Seconds" || "Minutes" || "Hours" || "Days" || "Weeks", + * Value: Number("int"), + * }, * }, * OfflineStoreConfig: { // OfflineStoreConfig * S3StorageConfig: { // S3StorageConfig diff --git a/clients/client-sagemaker/src/commands/DeleteModelBiasJobDefinitionCommand.ts b/clients/client-sagemaker/src/commands/DeleteModelBiasJobDefinitionCommand.ts index d3826f32c266..4c6f4eb9b3af 100644 --- a/clients/client-sagemaker/src/commands/DeleteModelBiasJobDefinitionCommand.ts +++ b/clients/client-sagemaker/src/commands/DeleteModelBiasJobDefinitionCommand.ts @@ -13,7 +13,7 @@ import { import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; import { SerdeContext as __SerdeContext } from "@smithy/types"; -import { DeleteModelBiasJobDefinitionRequest } from "../models/models_1"; +import { DeleteModelBiasJobDefinitionRequest } from "../models/models_2"; import { de_DeleteModelBiasJobDefinitionCommand, se_DeleteModelBiasJobDefinitionCommand, diff --git a/clients/client-sagemaker/src/commands/DeleteModelCommand.ts b/clients/client-sagemaker/src/commands/DeleteModelCommand.ts index 2c60e63e7856..e80930bdce53 100644 --- a/clients/client-sagemaker/src/commands/DeleteModelCommand.ts +++ b/clients/client-sagemaker/src/commands/DeleteModelCommand.ts @@ -13,7 +13,7 @@ import { import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; import { SerdeContext as __SerdeContext } from "@smithy/types"; -import { DeleteModelInput } from "../models/models_1"; +import { DeleteModelInput } from "../models/models_2"; import { de_DeleteModelCommand, se_DeleteModelCommand } from "../protocols/Aws_json1_1"; import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient"; diff --git a/clients/client-sagemaker/src/commands/DescribeFeatureGroupCommand.ts b/clients/client-sagemaker/src/commands/DescribeFeatureGroupCommand.ts index 74ae1b3b2b1d..bdfe45f622d5 100644 --- a/clients/client-sagemaker/src/commands/DescribeFeatureGroupCommand.ts +++ b/clients/client-sagemaker/src/commands/DescribeFeatureGroupCommand.ts @@ -69,6 +69,10 @@ export interface DescribeFeatureGroupCommandOutput extends DescribeFeatureGroupR * // KmsKeyId: "STRING_VALUE", * // }, * // EnableOnlineStore: true || false, + * // TtlDuration: { // TtlDuration + * // Unit: "Seconds" || "Minutes" || "Hours" || "Days" || "Weeks", + * // Value: Number("int"), + * // }, * // }, * // OfflineStoreConfig: { // OfflineStoreConfig * // S3StorageConfig: { // S3StorageConfig diff --git a/clients/client-sagemaker/src/commands/SearchCommand.ts b/clients/client-sagemaker/src/commands/SearchCommand.ts index 4df710c53140..46d603de6824 100644 --- a/clients/client-sagemaker/src/commands/SearchCommand.ts +++ b/clients/client-sagemaker/src/commands/SearchCommand.ts @@ -1333,6 +1333,10 @@ export interface SearchCommandOutput extends SearchResponse, __MetadataBearer {} * // KmsKeyId: "STRING_VALUE", * // }, * // EnableOnlineStore: true || false, + * // TtlDuration: { // TtlDuration + * // Unit: "Seconds" || "Minutes" || "Hours" || "Days" || "Weeks", + * // Value: Number("int"), + * // }, * // }, * // OfflineStoreConfig: { // OfflineStoreConfig * // S3StorageConfig: { // S3StorageConfig diff --git a/clients/client-sagemaker/src/commands/StartEdgeDeploymentStageCommand.ts b/clients/client-sagemaker/src/commands/StartEdgeDeploymentStageCommand.ts index 2193fc570efa..84f67d04ec7a 100644 --- a/clients/client-sagemaker/src/commands/StartEdgeDeploymentStageCommand.ts +++ b/clients/client-sagemaker/src/commands/StartEdgeDeploymentStageCommand.ts @@ -13,7 +13,7 @@ import { import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; import { SerdeContext as __SerdeContext } from "@smithy/types"; -import { StartEdgeDeploymentStageRequest } from "../models/models_3"; +import { StartEdgeDeploymentStageRequest } from "../models/models_4"; import { de_StartEdgeDeploymentStageCommand, se_StartEdgeDeploymentStageCommand } from "../protocols/Aws_json1_1"; import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient"; diff --git a/clients/client-sagemaker/src/commands/StartInferenceExperimentCommand.ts b/clients/client-sagemaker/src/commands/StartInferenceExperimentCommand.ts index c9a128353cf4..aa5570c94592 100644 --- a/clients/client-sagemaker/src/commands/StartInferenceExperimentCommand.ts +++ b/clients/client-sagemaker/src/commands/StartInferenceExperimentCommand.ts @@ -13,7 +13,7 @@ import { import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; import { SerdeContext as __SerdeContext } from "@smithy/types"; -import { StartInferenceExperimentRequest, StartInferenceExperimentResponse } from "../models/models_3"; +import { StartInferenceExperimentRequest, StartInferenceExperimentResponse } from "../models/models_4"; import { de_StartInferenceExperimentCommand, se_StartInferenceExperimentCommand } from "../protocols/Aws_json1_1"; import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient"; diff --git a/clients/client-sagemaker/src/commands/UpdateFeatureGroupCommand.ts b/clients/client-sagemaker/src/commands/UpdateFeatureGroupCommand.ts index 153e61b632e6..e496b38b449e 100644 --- a/clients/client-sagemaker/src/commands/UpdateFeatureGroupCommand.ts +++ b/clients/client-sagemaker/src/commands/UpdateFeatureGroupCommand.ts @@ -51,6 +51,12 @@ export interface UpdateFeatureGroupCommandOutput extends UpdateFeatureGroupRespo * FeatureType: "Integral" || "Fractional" || "String", * }, * ], + * OnlineStoreConfig: { // OnlineStoreConfigUpdate + * TtlDuration: { // TtlDuration + * Unit: "Seconds" || "Minutes" || "Hours" || "Days" || "Weeks", + * Value: Number("int"), + * }, + * }, * }; * const command = new UpdateFeatureGroupCommand(input); * const response = await client.send(command); diff --git a/clients/client-sagemaker/src/models/models_0.ts b/clients/client-sagemaker/src/models/models_0.ts index e5350deee46a..3b37a2248198 100644 --- a/clients/client-sagemaker/src/models/models_0.ts +++ b/clients/client-sagemaker/src/models/models_0.ts @@ -7687,8 +7687,8 @@ export interface S3ModelDataSource { * SageMaker uses all objects that match the specified key name prefix as part of the ML model * data to deploy. A valid key name prefix identified by S3Uri always ends * with a forward slash (/).

- *

If you choose S3Object, S3Uri identifies an object that is the ML model data to - * deploy.

+ *

If you choose S3Object, S3Uri identifies an object that is + * the ML model data to deploy.

*/ S3DataType: S3ModelDataType | string | undefined; @@ -7747,9 +7747,9 @@ export interface S3ModelDataSource { * if your uncompressed ML model consists of two S3 objects * s3://mybucket/model/weights and s3://mybucket/model/weights/part1 * and you specify s3://mybucket/model/ as the value of S3Uri and - * S3Prefix as the value of S3DataType, then it will result in name clash between - * /opt/ml/model/weights (a regular file) and /opt/ml/model/weights/ - * (a directory).

+ * S3Prefix as the value of S3DataType, then it will result in name + * clash between /opt/ml/model/weights (a regular file) and + * /opt/ml/model/weights/ (a directory).

* *
  • *

    Do not organize the model artifacts in @@ -7912,7 +7912,7 @@ export interface ContainerDefinition { /** *

    Specifies the location of ML model data to deploy.

    * - *

    Currently you cannot use ModelDataSource in conjuction with + *

    Currently you cannot use ModelDataSource in conjunction with * SageMaker batch transform, SageMaker serverless endpoints, SageMaker multi-model endpoints, and SageMaker * Marketplace.

    *
    diff --git a/clients/client-sagemaker/src/models/models_1.ts b/clients/client-sagemaker/src/models/models_1.ts index 45e70bda8272..4e19c9374e36 100644 --- a/clients/client-sagemaker/src/models/models_1.ts +++ b/clients/client-sagemaker/src/models/models_1.ts @@ -1147,6 +1147,43 @@ export interface OnlineStoreSecurityConfig { KmsKeyId?: string; } +/** + * @public + * @enum + */ +export const TtlDurationUnit = { + DAYS: "Days", + HOURS: "Hours", + MINUTES: "Minutes", + SECONDS: "Seconds", + WEEKS: "Weeks", +} as const; + +/** + * @public + */ +export type TtlDurationUnit = (typeof TtlDurationUnit)[keyof typeof TtlDurationUnit]; + +/** + * @public + *

    Time to live duration, where the record is hard deleted after the expiration time is + * reached; ExpiresAt = EventTime + TtlDuration. For + * information on HardDelete, see the DeleteRecord API in the Amazon SageMaker API Reference guide.

    + */ +export interface TtlDuration { + /** + *

    + * TtlDuration time unit.

    + */ + Unit?: TtlDurationUnit | string; + + /** + *

    + * TtlDuration time value.

    + */ + Value?: number; +} + /** * @public *

    Use this to specify the Amazon Web Services Key Management Service (KMS) Key ID, or @@ -1170,6 +1207,13 @@ export interface OnlineStoreConfig { *

    The default value is False.

    */ EnableOnlineStore?: boolean; + + /** + *

    Time to live duration, where the record is hard deleted after the expiration time is + * reached; ExpiresAt = EventTime + TtlDuration. For + * information on HardDelete, see the DeleteRecord API in the Amazon SageMaker API Reference guide.

    + */ + TtlDuration?: TtlDuration; } /** @@ -10629,26 +10673,6 @@ export interface DeleteInferenceExperimentResponse { InferenceExperimentArn: string | undefined; } -/** - * @public - */ -export interface DeleteModelInput { - /** - *

    The name of the model to delete.

    - */ - ModelName: string | undefined; -} - -/** - * @public - */ -export interface DeleteModelBiasJobDefinitionRequest { - /** - *

    The name of the model bias job definition to delete.

    - */ - JobDefinitionName: string | undefined; -} - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_2.ts b/clients/client-sagemaker/src/models/models_2.ts index 3fcab597efa7..afb5a7822a8f 100644 --- a/clients/client-sagemaker/src/models/models_2.ts +++ b/clients/client-sagemaker/src/models/models_2.ts @@ -177,6 +177,26 @@ import { VendorGuidance, } from "./models_1"; +/** + * @public + */ +export interface DeleteModelInput { + /** + *

    The name of the model to delete.

    + */ + ModelName: string | undefined; +} + +/** + * @public + */ +export interface DeleteModelBiasJobDefinitionRequest { + /** + *

    The name of the model bias job definition to delete.

    + */ + JobDefinitionName: string | undefined; +} + /** * @public */ @@ -10150,67 +10170,6 @@ export interface HubContentInfo { CreationTime: Date | undefined; } -/** - * @public - * @enum - */ -export const HubContentSortBy = { - CREATION_TIME: "CreationTime", - HUB_CONTENT_NAME: "HubContentName", - HUB_CONTENT_STATUS: "HubContentStatus", -} as const; - -/** - * @public - */ -export type HubContentSortBy = (typeof HubContentSortBy)[keyof typeof HubContentSortBy]; - -/** - * @public - *

    Information about a hub.

    - */ -export interface HubInfo { - /** - *

    The name of the hub.

    - */ - HubName: string | undefined; - - /** - *

    The Amazon Resource Name (ARN) of the hub.

    - */ - HubArn: string | undefined; - - /** - *

    The display name of the hub.

    - */ - HubDisplayName?: string; - - /** - *

    A description of the hub.

    - */ - HubDescription?: string; - - /** - *

    The searchable keywords for the hub.

    - */ - HubSearchKeywords?: string[]; - - /** - *

    The status of the hub.

    - */ - HubStatus: HubStatus | string | undefined; - - /** - *

    The date and time that the hub was created.

    - */ - CreationTime: Date | undefined; - - /** - *

    The date and time that the hub was last modified.

    - */ - LastModifiedTime: Date | undefined; -} - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_3.ts b/clients/client-sagemaker/src/models/models_3.ts index 6448f1f8e2b0..a23dd14482dd 100644 --- a/clients/client-sagemaker/src/models/models_3.ts +++ b/clients/client-sagemaker/src/models/models_3.ts @@ -92,6 +92,7 @@ import { TrialComponentArtifact, TrialComponentParameterValue, TrialComponentStatus, + TtlDuration, UiTemplate, } from "./models_1"; import { @@ -127,8 +128,7 @@ import { Filter, FlowDefinitionSummary, HubContentInfo, - HubContentSortBy, - HubInfo, + HubStatus, HyperParameterTrainingJobSummary, HyperParameterTuningJobCompletionDetails, HyperParameterTuningJobConsumedResources, @@ -177,6 +177,67 @@ import { Workteam, } from "./models_2"; +/** + * @public + * @enum + */ +export const HubContentSortBy = { + CREATION_TIME: "CreationTime", + HUB_CONTENT_NAME: "HubContentName", + HUB_CONTENT_STATUS: "HubContentStatus", +} as const; + +/** + * @public + */ +export type HubContentSortBy = (typeof HubContentSortBy)[keyof typeof HubContentSortBy]; + +/** + * @public + *

    Information about a hub.

    + */ +export interface HubInfo { + /** + *

    The name of the hub.

    + */ + HubName: string | undefined; + + /** + *

    The Amazon Resource Name (ARN) of the hub.

    + */ + HubArn: string | undefined; + + /** + *

    The display name of the hub.

    + */ + HubDisplayName?: string; + + /** + *

    A description of the hub.

    + */ + HubDescription?: string; + + /** + *

    The searchable keywords for the hub.

    + */ + HubSearchKeywords?: string[]; + + /** + *

    The status of the hub.

    + */ + HubStatus: HubStatus | string | undefined; + + /** + *

    The date and time that the hub was created.

    + */ + CreationTime: Date | undefined; + + /** + *

    The date and time that the hub was last modified.

    + */ + LastModifiedTime: Date | undefined; +} + /** * @public * @enum @@ -8589,6 +8650,19 @@ export interface NestedFilters { Filters: Filter[] | undefined; } +/** + * @public + *

    Updates the feature group online store configuration.

    + */ +export interface OnlineStoreConfigUpdate { + /** + *

    Time to live duration, where the record is hard deleted after the expiration time is + * reached; ExpiresAt = EventTime + TtlDuration. For + * information on HardDelete, see the DeleteRecord API in the Amazon SageMaker API Reference guide.

    + */ + TtlDuration?: TtlDuration; +} + /** * @public *

    The trial that a trial component is associated with and the experiment the trial is part @@ -10113,41 +10187,6 @@ export interface SendPipelineExecutionStepSuccessResponse { PipelineExecutionArn?: string; } -/** - * @public - */ -export interface StartEdgeDeploymentStageRequest { - /** - *

    The name of the edge deployment plan to start.

    - */ - EdgeDeploymentPlanName: string | undefined; - - /** - *

    The name of the stage to start.

    - */ - StageName: string | undefined; -} - -/** - * @public - */ -export interface StartInferenceExperimentRequest { - /** - *

    The name of the inference experiment to start.

    - */ - Name: string | undefined; -} - -/** - * @public - */ -export interface StartInferenceExperimentResponse { - /** - *

    The ARN of the started inference experiment to start.

    - */ - InferenceExperimentArn: string | undefined; -} - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_4.ts b/clients/client-sagemaker/src/models/models_4.ts index 7fd32fe40172..fac0ea3b330a 100644 --- a/clients/client-sagemaker/src/models/models_4.ts +++ b/clients/client-sagemaker/src/models/models_4.ts @@ -61,12 +61,48 @@ import { InferenceExperimentStopDesiredState, ModelVariantAction, NestedFilters, + OnlineStoreConfigUpdate, Parameter, ProfilerConfigForUpdate, ResourceConfigForUpdate, SearchSortOrder, } from "./models_3"; +/** + * @public + */ +export interface StartEdgeDeploymentStageRequest { + /** + *

    The name of the edge deployment plan to start.

    + */ + EdgeDeploymentPlanName: string | undefined; + + /** + *

    The name of the stage to start.

    + */ + StageName: string | undefined; +} + +/** + * @public + */ +export interface StartInferenceExperimentRequest { + /** + *

    The name of the inference experiment to start.

    + */ + Name: string | undefined; +} + +/** + * @public + */ +export interface StartInferenceExperimentResponse { + /** + *

    The ARN of the started inference experiment to start.

    + */ + InferenceExperimentArn: string | undefined; +} + /** * @public */ @@ -800,6 +836,11 @@ export interface UpdateFeatureGroupRequest { * made a valid request for Feature Store to update the feature group.

    */ FeatureAdditions?: FeatureDefinition[]; + + /** + *

    Updates the feature group online store configuration.

    + */ + OnlineStoreConfig?: OnlineStoreConfigUpdate; } /** diff --git a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts index b8ba108397d6..ca434b5ac9c8 100644 --- a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts +++ b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts @@ -1042,8 +1042,6 @@ import { DeleteImageRequest, DeleteImageVersionRequest, DeleteInferenceExperimentRequest, - DeleteModelBiasJobDefinitionRequest, - DeleteModelInput, DeploymentConfig, DeploymentStage, DeviceSelectionConfig, @@ -1177,6 +1175,7 @@ import { TrialComponentArtifact, TrialComponentParameterValue, TrialComponentStatus, + TtlDuration, TuningJobCompletionCriteria, UiConfig, UiTemplate, @@ -1184,8 +1183,10 @@ import { WorkforceVpcConfigRequest, } from "../models/models_1"; import { + DeleteModelBiasJobDefinitionRequest, DeleteModelCardRequest, DeleteModelExplainabilityJobDefinitionRequest, + DeleteModelInput, DeleteModelPackageGroupInput, DeleteModelPackageGroupPolicyInput, DeleteModelPackageInput, @@ -1355,7 +1356,6 @@ import { GetSearchSuggestionsRequest, GitConfigForUpdate, HubContentInfo, - HubInfo, HyperParameterTrainingJobSummary, HyperParameterTuningJobCompletionDetails, InferenceRecommendation, @@ -1380,6 +1380,7 @@ import { Workteam, } from "../models/models_2"; import { + HubInfo, HumanTaskUiSummary, HyperParameterTuningJobSearchEntity, HyperParameterTuningJobSummary, @@ -1554,6 +1555,7 @@ import { NestedFilters, NotebookInstanceLifecycleConfigSummary, NotebookInstanceSummary, + OnlineStoreConfigUpdate, Parameter, Pipeline, PipelineExecution, @@ -1579,8 +1581,6 @@ import { SendPipelineExecutionStepFailureRequest, SendPipelineExecutionStepSuccessRequest, SpaceDetails, - StartEdgeDeploymentStageRequest, - StartInferenceExperimentRequest, StudioLifecycleConfigDetails, TrainingJob, TrainingJobSummary, @@ -1598,6 +1598,8 @@ import { SearchExpression, SearchRequest, ServiceCatalogProvisioningUpdateDetails, + StartEdgeDeploymentStageRequest, + StartInferenceExperimentRequest, StartMonitoringScheduleRequest, StartNotebookInstanceInput, StartPipelineExecutionRequest, @@ -21378,6 +21380,8 @@ const se_MonitoringScheduleConfig = (input: MonitoringScheduleConfig, context: _ // se_OnlineStoreConfig omitted. +// se_OnlineStoreConfigUpdate omitted. + // se_OnlineStoreSecurityConfig omitted. // se_OutputConfig omitted. @@ -21863,6 +21867,8 @@ const se_TrialComponentParameterValue = (input: TrialComponentParameterValue, co // se_TrialComponentStatus omitted. +// se_TtlDuration omitted. + /** * serializeAws_json1_1TuningJobCompletionCriteria */ @@ -28061,6 +28067,8 @@ const de_TrialSummary = (output: any, context: __SerdeContext): TrialSummary => }) as any; }; +// de_TtlDuration omitted. + /** * deserializeAws_json1_1TuningJobCompletionCriteria */ diff --git a/codegen/sdk-codegen/aws-models/sagemaker.json b/codegen/sdk-codegen/aws-models/sagemaker.json index 641f3ff2cf35..9278f75a6ca0 100644 --- a/codegen/sdk-codegen/aws-models/sagemaker.json +++ b/codegen/sdk-codegen/aws-models/sagemaker.json @@ -5998,7 +5998,7 @@ "ModelDataSource": { "target": "com.amazonaws.sagemaker#ModelDataSource", "traits": { - "smithy.api#documentation": "

    Specifies the location of ML model data to deploy.

    \n \n

    Currently you cannot use ModelDataSource in conjuction with\n SageMaker batch transform, SageMaker serverless endpoints, SageMaker multi-model endpoints, and SageMaker\n Marketplace.

    \n
    " + "smithy.api#documentation": "

    Specifies the location of ML model data to deploy.

    \n \n

    Currently you cannot use ModelDataSource in conjunction with\n SageMaker batch transform, SageMaker serverless endpoints, SageMaker multi-model endpoints, and SageMaker\n Marketplace.

    \n
    " } } }, @@ -41532,12 +41532,32 @@ "smithy.api#default": false, "smithy.api#documentation": "

    Turn OnlineStore off by specifying False \n for the EnableOnlineStore flag. Turn OnlineStore \n on by specifying True \n for the EnableOnlineStore flag.

    \n

    The default value is False.

    " } + }, + "TtlDuration": { + "target": "com.amazonaws.sagemaker#TtlDuration", + "traits": { + "smithy.api#documentation": "

    Time to live duration, where the record is hard deleted after the expiration time is\n reached; ExpiresAt = EventTime + TtlDuration. For\n information on HardDelete, see the DeleteRecord API in the Amazon SageMaker API Reference guide.

    " + } } }, "traits": { "smithy.api#documentation": "

    Use this to specify the Amazon Web Services Key Management Service (KMS) Key ID, or\n KMSKeyId, for at rest data encryption. You can turn\n OnlineStore on or off by specifying the EnableOnlineStore flag\n at General Assembly.

    \n

    The default value is False.

    " } }, + "com.amazonaws.sagemaker#OnlineStoreConfigUpdate": { + "type": "structure", + "members": { + "TtlDuration": { + "target": "com.amazonaws.sagemaker#TtlDuration", + "traits": { + "smithy.api#documentation": "

    Time to live duration, where the record is hard deleted after the expiration time is\n reached; ExpiresAt = EventTime + TtlDuration. For\n information on HardDelete, see the DeleteRecord API in the Amazon SageMaker API Reference guide.

    " + } + } + }, + "traits": { + "smithy.api#documentation": "

    Updates the feature group online store configuration.

    " + } + }, "com.amazonaws.sagemaker#OnlineStoreSecurityConfig": { "type": "structure", "members": { @@ -47830,14 +47850,14 @@ "S3DataType": { "target": "com.amazonaws.sagemaker#S3ModelDataType", "traits": { - "smithy.api#documentation": "

    Specifies the type of ML model data to deploy.

    \n

    If you choose S3Prefix, S3Uri identifies a key name prefix.\n SageMaker uses all objects that match the specified key name prefix as part of the ML model\n data to deploy. A valid key name prefix identified by S3Uri always ends\n with a forward slash (/).

    \n

    If you choose S3Object, S3Uri identifies an object that is the ML model data to\n deploy.

    ", + "smithy.api#documentation": "

    Specifies the type of ML model data to deploy.

    \n

    If you choose S3Prefix, S3Uri identifies a key name prefix.\n SageMaker uses all objects that match the specified key name prefix as part of the ML model\n data to deploy. A valid key name prefix identified by S3Uri always ends\n with a forward slash (/).

    \n

    If you choose S3Object, S3Uri identifies an object that is\n the ML model data to deploy.

    ", "smithy.api#required": {} } }, "CompressionType": { "target": "com.amazonaws.sagemaker#ModelCompressionType", "traits": { - "smithy.api#documentation": "

    Specifies how the ML model data is prepared.

    \n

    If you choose Gzip and choose S3Object as the value of\n S3DataType, S3Uri identifies an object that is a\n gzip-compressed TAR archive. SageMaker will attempt to decompress and untar the object\n during model deployment.

    \n

    If you choose None and chooose S3Object as the value of\n S3DataType, S3Uri identifies an object that represents an\n uncompressed ML model to deploy.

    \n

    If you choose None and choose S3Prefix as the value of\n S3DataType, S3Uri identifies a key name prefix, under which\n all objects represents the uncompressed ML model to deploy.

    \n

    If you choose None, then SageMaker will follow rules below when creating model data files\n under /opt/ml/model directory for use by your inference code:

    \n ", + "smithy.api#documentation": "

    Specifies how the ML model data is prepared.

    \n

    If you choose Gzip and choose S3Object as the value of\n S3DataType, S3Uri identifies an object that is a\n gzip-compressed TAR archive. SageMaker will attempt to decompress and untar the object\n during model deployment.

    \n

    If you choose None and chooose S3Object as the value of\n S3DataType, S3Uri identifies an object that represents an\n uncompressed ML model to deploy.

    \n

    If you choose None and choose S3Prefix as the value of\n S3DataType, S3Uri identifies a key name prefix, under which\n all objects represents the uncompressed ML model to deploy.

    \n

    If you choose None, then SageMaker will follow rules below when creating model data files\n under /opt/ml/model directory for use by your inference code:

    \n ", "smithy.api#required": {} } } @@ -55801,6 +55821,69 @@ "smithy.api#documentation": "

    A summary of the properties of a trial. To get the complete set of properties, call the\n DescribeTrial API and provide the TrialName.

    " } }, + "com.amazonaws.sagemaker#TtlDuration": { + "type": "structure", + "members": { + "Unit": { + "target": "com.amazonaws.sagemaker#TtlDurationUnit", + "traits": { + "smithy.api#documentation": "

    \n TtlDuration time unit.

    " + } + }, + "Value": { + "target": "com.amazonaws.sagemaker#TtlDurationValue", + "traits": { + "smithy.api#documentation": "

    \n TtlDuration time value.

    " + } + } + }, + "traits": { + "smithy.api#documentation": "

    Time to live duration, where the record is hard deleted after the expiration time is\n reached; ExpiresAt = EventTime + TtlDuration. For\n information on HardDelete, see the DeleteRecord API in the Amazon SageMaker API Reference guide.

    " + } + }, + "com.amazonaws.sagemaker#TtlDurationUnit": { + "type": "enum", + "members": { + "SECONDS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Seconds" + } + }, + "MINUTES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Minutes" + } + }, + "HOURS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Hours" + } + }, + "DAYS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Days" + } + }, + "WEEKS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Weeks" + } + } + } + }, + "com.amazonaws.sagemaker#TtlDurationValue": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1 + } + } + }, "com.amazonaws.sagemaker#TuningJobCompletionCriteria": { "type": "structure", "members": { @@ -56626,6 +56709,12 @@ "traits": { "smithy.api#documentation": "

    Updates the feature group. Updating a feature group is an asynchronous operation. When\n you get an HTTP 200 response, you've made a valid request. It takes some time after you've\n made a valid request for Feature Store to update the feature group.

    " } + }, + "OnlineStoreConfig": { + "target": "com.amazonaws.sagemaker#OnlineStoreConfigUpdate", + "traits": { + "smithy.api#documentation": "

    Updates the feature group online store configuration.

    " + } } }, "traits": {