2020/04/22 - Amazon Redshift - 4 new api methods
Changes Amazon Redshift support for usage limits
Creates a usage limit for a specified Amazon Redshift feature on a cluster. The usage limit is identified by the returned usage limit identifier.
See also: AWS API Documentation
Request Syntax
client.create_usage_limit( ClusterIdentifier='string', FeatureType='spectrum'|'concurrency-scaling', LimitType='time'|'data-scanned', Amount=123, Period='daily'|'weekly'|'monthly', BreachAction='log'|'emit-metric'|'disable', Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )
string
[REQUIRED]
The identifier of the cluster that you want to limit usage.
string
[REQUIRED]
The Amazon Redshift feature that you want to limit.
string
[REQUIRED]
The type of limit. Depending on the feature type, this can be based on a time duration or data size. If FeatureType is spectrum , then LimitType must be data-scanned . If FeatureType is concurrency-scaling , then LimitType must be time .
integer
[REQUIRED]
The limit amount. If time-based, this amount is in minutes. If data-based, this amount is in terabytes (TB). The value must be a positive number.
string
The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly .
string
The action that Amazon Redshift takes when the limit is reached. The default is log. For more information about this parameter, see UsageLimit .
list
A list of tag instances.
(dict) --
A tag consisting of a name/value pair for a resource.
Key (string) --
The key, or name, for the resource tag.
Value (string) --
The value for the resource tag.
dict
Response Syntax
{ 'UsageLimitId': 'string', 'ClusterIdentifier': 'string', 'FeatureType': 'spectrum'|'concurrency-scaling', 'LimitType': 'time'|'data-scanned', 'Amount': 123, 'Period': 'daily'|'weekly'|'monthly', 'BreachAction': 'log'|'emit-metric'|'disable', 'Tags': [ { 'Key': 'string', 'Value': 'string' }, ] }
Response Structure
(dict) --
Describes a usage limit object for a cluster.
UsageLimitId (string) --
The identifier of the usage limit.
ClusterIdentifier (string) --
The identifier of the cluster with a usage limit.
FeatureType (string) --
The Amazon Redshift feature to which the limit applies.
LimitType (string) --
The type of limit. Depending on the feature type, this can be based on a time duration or data size.
Amount (integer) --
The limit amount. If time-based, this amount is in minutes. If data-based, this amount is in terabytes (TB).
Period (string) --
The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly .
BreachAction (string) --
The action that Amazon Redshift takes when the limit is reached. Possible values are:
log - To log an event in a system table. The default is log.
emit-metric - To emit CloudWatch metrics.
disable - To disable the feature until the next usage period begins.
Tags (list) --
A list of tag instances.
(dict) --
A tag consisting of a name/value pair for a resource.
Key (string) --
The key, or name, for the resource tag.
Value (string) --
The value for the resource tag.
Deletes a usage limit from a cluster.
See also: AWS API Documentation
Request Syntax
client.delete_usage_limit( UsageLimitId='string' )
string
[REQUIRED]
The identifier of the usage limit to delete.
None
Modifies a usage limit in a cluster. You can't modify the feature type or period of a usage limit.
See also: AWS API Documentation
Request Syntax
client.modify_usage_limit( UsageLimitId='string', Amount=123, BreachAction='log'|'emit-metric'|'disable' )
string
[REQUIRED]
The identifier of the usage limit to modify.
integer
The new limit amount. For more information about this parameter, see UsageLimit .
string
The new action that Amazon Redshift takes when the limit is reached. For more information about this parameter, see UsageLimit .
dict
Response Syntax
{ 'UsageLimitId': 'string', 'ClusterIdentifier': 'string', 'FeatureType': 'spectrum'|'concurrency-scaling', 'LimitType': 'time'|'data-scanned', 'Amount': 123, 'Period': 'daily'|'weekly'|'monthly', 'BreachAction': 'log'|'emit-metric'|'disable', 'Tags': [ { 'Key': 'string', 'Value': 'string' }, ] }
Response Structure
(dict) --
Describes a usage limit object for a cluster.
UsageLimitId (string) --
The identifier of the usage limit.
ClusterIdentifier (string) --
The identifier of the cluster with a usage limit.
FeatureType (string) --
The Amazon Redshift feature to which the limit applies.
LimitType (string) --
The type of limit. Depending on the feature type, this can be based on a time duration or data size.
Amount (integer) --
The limit amount. If time-based, this amount is in minutes. If data-based, this amount is in terabytes (TB).
Period (string) --
The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly .
BreachAction (string) --
The action that Amazon Redshift takes when the limit is reached. Possible values are:
log - To log an event in a system table. The default is log.
emit-metric - To emit CloudWatch metrics.
disable - To disable the feature until the next usage period begins.
Tags (list) --
A list of tag instances.
(dict) --
A tag consisting of a name/value pair for a resource.
Key (string) --
The key, or name, for the resource tag.
Value (string) --
The value for the resource tag.
Shows usage limits on a cluster. Results are filtered based on the combination of input usage limit identifier, cluster identifier, and feature type parameters:
If usage limit identifier, cluster identifier, and feature type are not provided, then all usage limit objects for the current account in the current region are returned.
If usage limit identifier is provided, then the corresponding usage limit object is returned.
If cluster identifier is provided, then all usage limit objects for the specified cluster are returned.
If cluster identifier and feature type are provided, then all usage limit objects for the combination of cluster and feature are returned.
See also: AWS API Documentation
Request Syntax
client.describe_usage_limits( UsageLimitId='string', ClusterIdentifier='string', FeatureType='spectrum'|'concurrency-scaling', MaxRecords=123, Marker='string', TagKeys=[ 'string', ], TagValues=[ 'string', ] )
string
The identifier of the usage limit to describe.
string
The identifier of the cluster for which you want to describe usage limits.
string
The feature type for which you want to describe usage limits.
integer
The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.
Default: 100
Constraints: minimum 20, maximum 100.
string
An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeUsageLimits request exceed the value specified in MaxRecords , AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.
list
A tag key or keys for which you want to return all matching usage limit objects that are associated with the specified key or keys. For example, suppose that you have parameter groups that are tagged with keys called owner and environment . If you specify both of these tag keys in the request, Amazon Redshift returns a response with the usage limit objects have either or both of these tag keys associated with them.
(string) --
list
A tag value or values for which you want to return all matching usage limit objects that are associated with the specified tag value or values. For example, suppose that you have parameter groups that are tagged with values called admin and test . If you specify both of these tag values in the request, Amazon Redshift returns a response with the usage limit objects that have either or both of these tag values associated with them.
(string) --
dict
Response Syntax
{ 'UsageLimits': [ { 'UsageLimitId': 'string', 'ClusterIdentifier': 'string', 'FeatureType': 'spectrum'|'concurrency-scaling', 'LimitType': 'time'|'data-scanned', 'Amount': 123, 'Period': 'daily'|'weekly'|'monthly', 'BreachAction': 'log'|'emit-metric'|'disable', 'Tags': [ { 'Key': 'string', 'Value': 'string' }, ] }, ], 'Marker': 'string' }
Response Structure
(dict) --
UsageLimits (list) --
Contains the output from the DescribeUsageLimits action.
(dict) --
Describes a usage limit object for a cluster.
UsageLimitId (string) --
The identifier of the usage limit.
ClusterIdentifier (string) --
The identifier of the cluster with a usage limit.
FeatureType (string) --
The Amazon Redshift feature to which the limit applies.
LimitType (string) --
The type of limit. Depending on the feature type, this can be based on a time duration or data size.
Amount (integer) --
The limit amount. If time-based, this amount is in minutes. If data-based, this amount is in terabytes (TB).
Period (string) --
The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly .
BreachAction (string) --
The action that Amazon Redshift takes when the limit is reached. Possible values are:
log - To log an event in a system table. The default is log.
emit-metric - To emit CloudWatch metrics.
disable - To disable the feature until the next usage period begins.
Tags (list) --
A list of tag instances.
(dict) --
A tag consisting of a name/value pair for a resource.
Key (string) --
The key, or name, for the resource tag.
Value (string) --
The value for the resource tag.
Marker (string) --
A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.