Skip to content

Commit 9e6d60d

Browse files
author
awstools
committed
feat(client-sagemaker): Introducing TTL for online store records in feature groups.
1 parent 5e12ed4 commit 9e6d60d

15 files changed

+314
-136
lines changed

clients/client-sagemaker/src/commands/CreateFeatureGroupCommand.ts

+4
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,10 @@ export interface CreateFeatureGroupCommandOutput extends CreateFeatureGroupRespo
7070
* KmsKeyId: "STRING_VALUE",
7171
* },
7272
* EnableOnlineStore: true || false,
73+
* TtlDuration: { // TtlDuration
74+
* Unit: "Seconds" || "Minutes" || "Hours" || "Days" || "Weeks",
75+
* Value: Number("int"),
76+
* },
7377
* },
7478
* OfflineStoreConfig: { // OfflineStoreConfig
7579
* S3StorageConfig: { // S3StorageConfig

clients/client-sagemaker/src/commands/DeleteModelBiasJobDefinitionCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
1414
import { SerdeContext as __SerdeContext } from "@smithy/types";
1515

16-
import { DeleteModelBiasJobDefinitionRequest } from "../models/models_1";
16+
import { DeleteModelBiasJobDefinitionRequest } from "../models/models_2";
1717
import {
1818
de_DeleteModelBiasJobDefinitionCommand,
1919
se_DeleteModelBiasJobDefinitionCommand,

clients/client-sagemaker/src/commands/DeleteModelCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
1414
import { SerdeContext as __SerdeContext } from "@smithy/types";
1515

16-
import { DeleteModelInput } from "../models/models_1";
16+
import { DeleteModelInput } from "../models/models_2";
1717
import { de_DeleteModelCommand, se_DeleteModelCommand } from "../protocols/Aws_json1_1";
1818
import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient";
1919

clients/client-sagemaker/src/commands/DescribeFeatureGroupCommand.ts

+4
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,10 @@ export interface DescribeFeatureGroupCommandOutput extends DescribeFeatureGroupR
6969
* // KmsKeyId: "STRING_VALUE",
7070
* // },
7171
* // EnableOnlineStore: true || false,
72+
* // TtlDuration: { // TtlDuration
73+
* // Unit: "Seconds" || "Minutes" || "Hours" || "Days" || "Weeks",
74+
* // Value: Number("int"),
75+
* // },
7276
* // },
7377
* // OfflineStoreConfig: { // OfflineStoreConfig
7478
* // S3StorageConfig: { // S3StorageConfig

clients/client-sagemaker/src/commands/SearchCommand.ts

+4
Original file line numberDiff line numberDiff line change
@@ -1333,6 +1333,10 @@ export interface SearchCommandOutput extends SearchResponse, __MetadataBearer {}
13331333
* // KmsKeyId: "STRING_VALUE",
13341334
* // },
13351335
* // EnableOnlineStore: true || false,
1336+
* // TtlDuration: { // TtlDuration
1337+
* // Unit: "Seconds" || "Minutes" || "Hours" || "Days" || "Weeks",
1338+
* // Value: Number("int"),
1339+
* // },
13361340
* // },
13371341
* // OfflineStoreConfig: { // OfflineStoreConfig
13381342
* // S3StorageConfig: { // S3StorageConfig

clients/client-sagemaker/src/commands/StartEdgeDeploymentStageCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
1414
import { SerdeContext as __SerdeContext } from "@smithy/types";
1515

16-
import { StartEdgeDeploymentStageRequest } from "../models/models_3";
16+
import { StartEdgeDeploymentStageRequest } from "../models/models_4";
1717
import { de_StartEdgeDeploymentStageCommand, se_StartEdgeDeploymentStageCommand } from "../protocols/Aws_json1_1";
1818
import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient";
1919

clients/client-sagemaker/src/commands/StartInferenceExperimentCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
1414
import { SerdeContext as __SerdeContext } from "@smithy/types";
1515

16-
import { StartInferenceExperimentRequest, StartInferenceExperimentResponse } from "../models/models_3";
16+
import { StartInferenceExperimentRequest, StartInferenceExperimentResponse } from "../models/models_4";
1717
import { de_StartInferenceExperimentCommand, se_StartInferenceExperimentCommand } from "../protocols/Aws_json1_1";
1818
import { SageMakerClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../SageMakerClient";
1919

clients/client-sagemaker/src/commands/UpdateFeatureGroupCommand.ts

+6
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,12 @@ export interface UpdateFeatureGroupCommandOutput extends UpdateFeatureGroupRespo
5151
* FeatureType: "Integral" || "Fractional" || "String",
5252
* },
5353
* ],
54+
* OnlineStoreConfig: { // OnlineStoreConfigUpdate
55+
* TtlDuration: { // TtlDuration
56+
* Unit: "Seconds" || "Minutes" || "Hours" || "Days" || "Weeks",
57+
* Value: Number("int"),
58+
* },
59+
* },
5460
* };
5561
* const command = new UpdateFeatureGroupCommand(input);
5662
* const response = await client.send(command);

clients/client-sagemaker/src/models/models_0.ts

+6-6
Original file line numberDiff line numberDiff line change
@@ -7687,8 +7687,8 @@ export interface S3ModelDataSource {
76877687
* SageMaker uses all objects that match the specified key name prefix as part of the ML model
76887688
* data to deploy. A valid key name prefix identified by <code>S3Uri</code> always ends
76897689
* with a forward slash (/).</p>
7690-
* <p>If you choose S3Object, S3Uri identifies an object that is the ML model data to
7691-
* deploy.</p>
7690+
* <p>If you choose <code>S3Object</code>, <code>S3Uri</code> identifies an object that is
7691+
* the ML model data to deploy.</p>
76927692
*/
76937693
S3DataType: S3ModelDataType | string | undefined;
76947694

@@ -7747,9 +7747,9 @@ export interface S3ModelDataSource {
77477747
* if your uncompressed ML model consists of two S3 objects
77487748
* <code>s3://mybucket/model/weights</code> and <code>s3://mybucket/model/weights/part1</code>
77497749
* and you specify <code>s3://mybucket/model/</code> as the value of <code>S3Uri</code> and
7750-
* <code>S3Prefix</code> as the value of S3DataType, then it will result in name clash between
7751-
* <code>/opt/ml/model/weights</code> (a regular file) and <code>/opt/ml/model/weights/</code>
7752-
* (a directory).</p>
7750+
* <code>S3Prefix</code> as the value of <code>S3DataType</code>, then it will result in name
7751+
* clash between <code>/opt/ml/model/weights</code> (a regular file) and
7752+
* <code>/opt/ml/model/weights/</code> (a directory).</p>
77537753
* </li>
77547754
* <li>
77557755
* <p>Do not organize the model artifacts in
@@ -7912,7 +7912,7 @@ export interface ContainerDefinition {
79127912
/**
79137913
* <p>Specifies the location of ML model data to deploy.</p>
79147914
* <note>
7915-
* <p>Currently you cannot use <code>ModelDataSource</code> in conjuction with
7915+
* <p>Currently you cannot use <code>ModelDataSource</code> in conjunction with
79167916
* SageMaker batch transform, SageMaker serverless endpoints, SageMaker multi-model endpoints, and SageMaker
79177917
* Marketplace.</p>
79187918
* </note>

clients/client-sagemaker/src/models/models_1.ts

+44-20
Original file line numberDiff line numberDiff line change
@@ -1147,6 +1147,43 @@ export interface OnlineStoreSecurityConfig {
11471147
KmsKeyId?: string;
11481148
}
11491149

1150+
/**
1151+
* @public
1152+
* @enum
1153+
*/
1154+
export const TtlDurationUnit = {
1155+
DAYS: "Days",
1156+
HOURS: "Hours",
1157+
MINUTES: "Minutes",
1158+
SECONDS: "Seconds",
1159+
WEEKS: "Weeks",
1160+
} as const;
1161+
1162+
/**
1163+
* @public
1164+
*/
1165+
export type TtlDurationUnit = (typeof TtlDurationUnit)[keyof typeof TtlDurationUnit];
1166+
1167+
/**
1168+
* @public
1169+
* <p>Time to live duration, where the record is hard deleted after the expiration time is
1170+
* reached; <code>ExpiresAt</code> = <code>EventTime</code> + <code>TtlDuration</code>. For
1171+
* information on HardDelete, see the <a href="https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_feature_store_DeleteRecord.html">DeleteRecord</a> API in the Amazon SageMaker API Reference guide.</p>
1172+
*/
1173+
export interface TtlDuration {
1174+
/**
1175+
* <p>
1176+
* <code>TtlDuration</code> time unit.</p>
1177+
*/
1178+
Unit?: TtlDurationUnit | string;
1179+
1180+
/**
1181+
* <p>
1182+
* <code>TtlDuration</code> time value.</p>
1183+
*/
1184+
Value?: number;
1185+
}
1186+
11501187
/**
11511188
* @public
11521189
* <p>Use this to specify the Amazon Web Services Key Management Service (KMS) Key ID, or
@@ -1170,6 +1207,13 @@ export interface OnlineStoreConfig {
11701207
* <p>The default value is <code>False</code>.</p>
11711208
*/
11721209
EnableOnlineStore?: boolean;
1210+
1211+
/**
1212+
* <p>Time to live duration, where the record is hard deleted after the expiration time is
1213+
* reached; <code>ExpiresAt</code> = <code>EventTime</code> + <code>TtlDuration</code>. For
1214+
* information on HardDelete, see the <a href="https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_feature_store_DeleteRecord.html">DeleteRecord</a> API in the Amazon SageMaker API Reference guide.</p>
1215+
*/
1216+
TtlDuration?: TtlDuration;
11731217
}
11741218

11751219
/**
@@ -10629,26 +10673,6 @@ export interface DeleteInferenceExperimentResponse {
1062910673
InferenceExperimentArn: string | undefined;
1063010674
}
1063110675

10632-
/**
10633-
* @public
10634-
*/
10635-
export interface DeleteModelInput {
10636-
/**
10637-
* <p>The name of the model to delete.</p>
10638-
*/
10639-
ModelName: string | undefined;
10640-
}
10641-
10642-
/**
10643-
* @public
10644-
*/
10645-
export interface DeleteModelBiasJobDefinitionRequest {
10646-
/**
10647-
* <p>The name of the model bias job definition to delete.</p>
10648-
*/
10649-
JobDefinitionName: string | undefined;
10650-
}
10651-
1065210676
/**
1065310677
* @internal
1065410678
*/

clients/client-sagemaker/src/models/models_2.ts

+20-61
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,26 @@ import {
177177
VendorGuidance,
178178
} from "./models_1";
179179

180+
/**
181+
* @public
182+
*/
183+
export interface DeleteModelInput {
184+
/**
185+
* <p>The name of the model to delete.</p>
186+
*/
187+
ModelName: string | undefined;
188+
}
189+
190+
/**
191+
* @public
192+
*/
193+
export interface DeleteModelBiasJobDefinitionRequest {
194+
/**
195+
* <p>The name of the model bias job definition to delete.</p>
196+
*/
197+
JobDefinitionName: string | undefined;
198+
}
199+
180200
/**
181201
* @public
182202
*/
@@ -10150,67 +10170,6 @@ export interface HubContentInfo {
1015010170
CreationTime: Date | undefined;
1015110171
}
1015210172

10153-
/**
10154-
* @public
10155-
* @enum
10156-
*/
10157-
export const HubContentSortBy = {
10158-
CREATION_TIME: "CreationTime",
10159-
HUB_CONTENT_NAME: "HubContentName",
10160-
HUB_CONTENT_STATUS: "HubContentStatus",
10161-
} as const;
10162-
10163-
/**
10164-
* @public
10165-
*/
10166-
export type HubContentSortBy = (typeof HubContentSortBy)[keyof typeof HubContentSortBy];
10167-
10168-
/**
10169-
* @public
10170-
* <p>Information about a hub.</p>
10171-
*/
10172-
export interface HubInfo {
10173-
/**
10174-
* <p>The name of the hub.</p>
10175-
*/
10176-
HubName: string | undefined;
10177-
10178-
/**
10179-
* <p>The Amazon Resource Name (ARN) of the hub.</p>
10180-
*/
10181-
HubArn: string | undefined;
10182-
10183-
/**
10184-
* <p>The display name of the hub.</p>
10185-
*/
10186-
HubDisplayName?: string;
10187-
10188-
/**
10189-
* <p>A description of the hub.</p>
10190-
*/
10191-
HubDescription?: string;
10192-
10193-
/**
10194-
* <p>The searchable keywords for the hub.</p>
10195-
*/
10196-
HubSearchKeywords?: string[];
10197-
10198-
/**
10199-
* <p>The status of the hub.</p>
10200-
*/
10201-
HubStatus: HubStatus | string | undefined;
10202-
10203-
/**
10204-
* <p>The date and time that the hub was created.</p>
10205-
*/
10206-
CreationTime: Date | undefined;
10207-
10208-
/**
10209-
* <p>The date and time that the hub was last modified.</p>
10210-
*/
10211-
LastModifiedTime: Date | undefined;
10212-
}
10213-
1021410173
/**
1021510174
* @internal
1021610175
*/

0 commit comments

Comments
 (0)