Skip to content

Commit

Permalink
feat(client-redshift-serverless): Adds and updates API members for th…
Browse files Browse the repository at this point in the history
…e Redshift Serverless AI-driven scaling and optimization feature using the price-performance target setting.
  • Loading branch information
awstools committed Oct 30, 2024
1 parent f2d0604 commit 2c0ec7d
Show file tree
Hide file tree
Showing 9 changed files with 143 additions and 1 deletion.
2 changes: 1 addition & 1 deletion clients/client-redshift-serverless/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ see <a href="https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-whatis.

## Installing

To install the this package, simply type add or install @aws-sdk/client-redshift-serverless
To install this package, simply type add or install @aws-sdk/client-redshift-serverless
using your favorite package manager:

- `npm install @aws-sdk/client-redshift-serverless`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,10 @@ export interface CreateWorkgroupCommandOutput extends CreateWorkgroupResponse, _
* ],
* port: Number("int"),
* maxCapacity: Number("int"),
* pricePerformanceTarget: { // PerformanceTarget
* status: "STRING_VALUE",
* level: Number("int"),
* },
* ipAddressType: "STRING_VALUE",
* };
* const command = new CreateWorkgroupCommand(input);
Expand Down Expand Up @@ -122,6 +126,10 @@ export interface CreateWorkgroupCommandOutput extends CreateWorkgroupResponse, _
* // "STRING_VALUE",
* // ],
* // ipAddressType: "STRING_VALUE",
* // pricePerformanceTarget: { // PerformanceTarget
* // status: "STRING_VALUE",
* // level: Number("int"),
* // },
* // },
* // };
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,10 @@ export interface DeleteWorkgroupCommandOutput extends DeleteWorkgroupResponse, _
* // "STRING_VALUE",
* // ],
* // ipAddressType: "STRING_VALUE",
* // pricePerformanceTarget: { // PerformanceTarget
* // status: "STRING_VALUE",
* // level: Number("int"),
* // },
* // },
* // };
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,10 @@ export interface GetWorkgroupCommandOutput extends GetWorkgroupResponse, __Metad
* // "STRING_VALUE",
* // ],
* // ipAddressType: "STRING_VALUE",
* // pricePerformanceTarget: { // PerformanceTarget
* // status: "STRING_VALUE",
* // level: Number("int"),
* // },
* // },
* // };
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,10 @@ export interface ListWorkgroupsCommandOutput extends ListWorkgroupsResponse, __M
* // "STRING_VALUE",
* // ],
* // ipAddressType: "STRING_VALUE",
* // pricePerformanceTarget: { // PerformanceTarget
* // status: "STRING_VALUE",
* // level: Number("int"),
* // },
* // },
* // ],
* // };
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,10 @@ export interface UpdateWorkgroupCommandOutput extends UpdateWorkgroupResponse, _
* port: Number("int"),
* maxCapacity: Number("int"),
* ipAddressType: "STRING_VALUE",
* pricePerformanceTarget: { // PerformanceTarget
* status: "STRING_VALUE",
* level: Number("int"),
* },
* };
* const command = new UpdateWorkgroupCommand(input);
* const response = await client.send(command);
Expand Down Expand Up @@ -116,6 +120,10 @@ export interface UpdateWorkgroupCommandOutput extends UpdateWorkgroupResponse, _
* // "STRING_VALUE",
* // ],
* // ipAddressType: "STRING_VALUE",
* // pricePerformanceTarget: { // PerformanceTarget
* // status: "STRING_VALUE",
* // level: Number("int"),
* // },
* // },
* // };
*
Expand Down
51 changes: 51 additions & 0 deletions clients/client-redshift-serverless/src/models/models_0.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1488,6 +1488,39 @@ export interface CreateUsageLimitResponse {
usageLimit?: UsageLimit;
}

/**
* @public
* @enum
*/
export const PerformanceTargetStatus = {
DISABLED: "DISABLED",
ENABLED: "ENABLED",
} as const;

/**
* @public
*/
export type PerformanceTargetStatus = (typeof PerformanceTargetStatus)[keyof typeof PerformanceTargetStatus];

/**
* <p>An object that represents the price performance target settings for the workgroup.</p>
* @public
*/
export interface PerformanceTarget {
/**
* <p>Whether the price performance target is enabled for the workgroup.</p>
* @public
*/
status?: PerformanceTargetStatus;

/**
* <p>The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These
* correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE.</p>
* @public
*/
level?: number;
}

/**
* @public
*/
Expand Down Expand Up @@ -1563,6 +1596,12 @@ export interface CreateWorkgroupRequest {
*/
maxCapacity?: number;

/**
* <p>An object that represents the price performance target settings for the workgroup.</p>
* @public
*/
pricePerformanceTarget?: PerformanceTarget;

/**
* <p>The IP address type that the workgroup supports. Possible values are <code>ipv4</code> and <code>dualstack</code>.</p>
* @public
Expand Down Expand Up @@ -1751,6 +1790,12 @@ export interface Workgroup {
* @public
*/
ipAddressType?: string;

/**
* <p>An object that represents the price performance target settings for the workgroup.</p>
* @public
*/
pricePerformanceTarget?: PerformanceTarget;
}

/**
Expand Down Expand Up @@ -3832,6 +3877,12 @@ export interface UpdateWorkgroupRequest {
* @public
*/
ipAddressType?: string;

/**
* <p>An object that represents the price performance target settings for the workgroup.</p>
* @public
*/
pricePerformanceTarget?: PerformanceTarget;
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -240,6 +240,7 @@ import {
ListWorkgroupsResponse,
LogExport,
Namespace,
PerformanceTarget,
PutResourcePolicyRequest,
RecoveryPoint,
ResourceNotFoundException,
Expand Down Expand Up @@ -2446,6 +2447,8 @@ const se_ListSnapshotsRequest = (input: ListSnapshotsRequest, context: __SerdeCo

// se_LogExportList omitted.

// se_PerformanceTarget omitted.

// se_PutResourcePolicyRequest omitted.

// se_RestoreFromRecoveryPointRequest omitted.
Expand Down Expand Up @@ -2948,6 +2951,8 @@ const de_NextInvocationsList = (output: any, context: __SerdeContext): Date[] =>
return retVal;
};

// de_PerformanceTarget omitted.

// de_PutResourcePolicyResponse omitted.

/**
Expand Down Expand Up @@ -3267,6 +3272,7 @@ const de_Workgroup = (output: any, context: __SerdeContext): Workgroup => {
namespaceName: __expectString,
patchVersion: __expectString,
port: __expectInt32,
pricePerformanceTarget: _json,
publiclyAccessible: __expectBoolean,
securityGroupIds: _json,
status: __expectString,
Expand Down
57 changes: 57 additions & 0 deletions codegen/sdk-codegen/aws-models/redshift-serverless.json
Original file line number Diff line number Diff line change
Expand Up @@ -993,6 +993,12 @@
"smithy.api#documentation": "<p>The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries. The max capacity is specified in RPUs.</p>"
}
},
"pricePerformanceTarget": {
"target": "com.amazonaws.redshiftserverless#PerformanceTarget",
"traits": {
"smithy.api#documentation": "<p>An object that represents the price performance target settings for the workgroup.</p>"
}
},
"ipAddressType": {
"target": "com.amazonaws.redshiftserverless#IpAddressType",
"traits": {
Expand Down Expand Up @@ -3669,6 +3675,45 @@
"com.amazonaws.redshiftserverless#ParameterValue": {
"type": "string"
},
"com.amazonaws.redshiftserverless#PerformanceTarget": {
"type": "structure",
"members": {
"status": {
"target": "com.amazonaws.redshiftserverless#PerformanceTargetStatus",
"traits": {
"smithy.api#documentation": "<p>Whether the price performance target is enabled for the workgroup.</p>"
}
},
"level": {
"target": "smithy.api#Integer",
"traits": {
"smithy.api#documentation": "<p>The target price performance level for the workgroup. Valid values include 1, 25, 50, 75, and 100. These\n correspond to the price performance levels LOW_COST, ECONOMICAL, BALANCED, RESOURCEFUL, and HIGH_PERFORMANCE.</p>",
"smithy.api#range": {
"min": 1,
"max": 100
}
}
}
},
"traits": {
"smithy.api#documentation": "<p>An object that represents the price performance target settings for the workgroup.</p>"
}
},
"com.amazonaws.redshiftserverless#PerformanceTargetStatus": {
"type": "string",
"traits": {
"smithy.api#enum": [
{
"name": "ENABLED",
"value": "ENABLED"
},
{
"name": "DISABLED",
"value": "DISABLED"
}
]
}
},
"com.amazonaws.redshiftserverless#PutResourcePolicy": {
"type": "operation",
"input": {
Expand Down Expand Up @@ -6561,6 +6606,12 @@
"traits": {
"smithy.api#documentation": "<p>The IP address type that the workgroup supports. Possible values are <code>ipv4</code> and <code>dualstack</code>.</p>"
}
},
"pricePerformanceTarget": {
"target": "com.amazonaws.redshiftserverless#PerformanceTarget",
"traits": {
"smithy.api#documentation": "<p>An object that represents the price performance target settings for the workgroup.</p>"
}
}
},
"traits": {
Expand Down Expand Up @@ -6942,6 +6993,12 @@
"traits": {
"smithy.api#documentation": "<p>The IP address type that the workgroup supports. Possible values are <code>ipv4</code> and <code>dualstack</code>.</p>"
}
},
"pricePerformanceTarget": {
"target": "com.amazonaws.redshiftserverless#PerformanceTarget",
"traits": {
"smithy.api#documentation": "<p>An object that represents the price performance target settings for the workgroup.</p>"
}
}
},
"traits": {
Expand Down

0 comments on commit 2c0ec7d

Please sign in to comment.