Class: AWSCDK::RedshiftServerless::CfnWorkgroupProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::RedshiftServerless::CfnWorkgroupProps
- Defined in:
- redshift_serverless/cfn_workgroup_props.rb
Overview
Properties for defining a CfnWorkgroup.
Instance Attribute Summary collapse
-
#base_capacity ⇒ Numeric?
readonly
The base compute capacity of the workgroup in Redshift Processing Units (RPUs).
-
#config_parameters ⇒ AWSCDK::IResolvable, ...
readonly
The key of the parameter.
-
#enhanced_vpc_routing ⇒ Boolean, ...
readonly
The value that specifies whether to enable enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC.
-
#max_capacity ⇒ Numeric?
readonly
The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries.
-
#namespace_name ⇒ String?
readonly
The namespace the workgroup is associated with.
-
#port ⇒ Numeric?
readonly
The custom port to use when connecting to a workgroup.
-
#price_performance_target ⇒ AWSCDK::IResolvable, ...
readonly
An object that represents the price performance target settings for the workgroup.
-
#publicly_accessible ⇒ Boolean, ...
readonly
A value that specifies whether the workgroup can be accessible from a public network.
-
#recovery_point_id ⇒ String?
readonly
The recovery point id to restore from.
-
#security_group_ids ⇒ Array<String, AWSCDK::Interfaces::AWSEC2::ISecurityGroupRef>?
readonly
A list of security group IDs to associate with the workgroup.
-
#snapshot_arn ⇒ String?
readonly
The Amazon Resource Name (ARN) of the snapshot to restore from.
-
#snapshot_name ⇒ String?
readonly
The snapshot name to restore from.
-
#snapshot_owner_account ⇒ String?
readonly
The Amazon Web Services account that owns the snapshot.
-
#subnet_ids ⇒ Array<String, AWSCDK::Interfaces::AWSEC2::ISubnetRef>?
readonly
A list of subnet IDs the workgroup is associated with.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The map of the key-value pairs used to tag the workgroup.
-
#track_name ⇒ String?
readonly
An optional parameter for the name of the track for the workgroup.
-
#workgroup ⇒ AWSCDK::IResolvable, ...
readonly
The collection of computing resources from which an endpoint is created.
-
#workgroup_name ⇒ String
readonly
The name of the workgroup.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(workgroup_name:, base_capacity: nil, config_parameters: nil, enhanced_vpc_routing: nil, max_capacity: nil, namespace_name: nil, port: nil, price_performance_target: nil, publicly_accessible: nil, recovery_point_id: nil, security_group_ids: nil, snapshot_arn: nil, snapshot_name: nil, snapshot_owner_account: nil, subnet_ids: nil, tags: nil, track_name: nil, workgroup: nil) ⇒ CfnWorkgroupProps
constructor
A new instance of CfnWorkgroupProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(workgroup_name:, base_capacity: nil, config_parameters: nil, enhanced_vpc_routing: nil, max_capacity: nil, namespace_name: nil, port: nil, price_performance_target: nil, publicly_accessible: nil, recovery_point_id: nil, security_group_ids: nil, snapshot_arn: nil, snapshot_name: nil, snapshot_owner_account: nil, subnet_ids: nil, tags: nil, track_name: nil, workgroup: nil) ⇒ CfnWorkgroupProps
Returns a new instance of CfnWorkgroupProps.
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 27 def initialize(workgroup_name:, base_capacity: nil, config_parameters: nil, enhanced_vpc_routing: nil, max_capacity: nil, namespace_name: nil, port: nil, price_performance_target: nil, publicly_accessible: nil, recovery_point_id: nil, security_group_ids: nil, snapshot_arn: nil, snapshot_name: nil, snapshot_owner_account: nil, subnet_ids: nil, tags: nil, track_name: nil, workgroup: nil) @workgroup_name = workgroup_name Jsii::Type.check_type(@workgroup_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "workgroupName") @base_capacity = base_capacity Jsii::Type.check_type(@base_capacity, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "baseCapacity") unless @base_capacity.nil? @config_parameters = config_parameters Jsii::Type.check_type(@config_parameters, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfcmVkc2hpZnRzZXJ2ZXJsZXNzLkNmbldvcmtncm91cC5Db25maWdQYXJhbWV0ZXJQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "configParameters") unless @config_parameters.nil? @enhanced_vpc_routing = enhanced_vpc_routing Jsii::Type.check_type(@enhanced_vpc_routing, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enhancedVpcRouting") unless @enhanced_vpc_routing.nil? @max_capacity = max_capacity Jsii::Type.check_type(@max_capacity, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxCapacity") unless @max_capacity.nil? @namespace_name = namespace_name Jsii::Type.check_type(@namespace_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "namespaceName") unless @namespace_name.nil? @port = port Jsii::Type.check_type(@port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "port") unless @port.nil? @price_performance_target = price_performance_target.is_a?(Hash) ? ::AWSCDK::RedshiftServerless::CfnWorkgroup::PerformanceTargetProperty.new(**price_performance_target.transform_keys(&:to_sym)) : price_performance_target Jsii::Type.check_type(@price_performance_target, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19yZWRzaGlmdHNlcnZlcmxlc3MuQ2ZuV29ya2dyb3VwLlBlcmZvcm1hbmNlVGFyZ2V0UHJvcGVydHkifV19fQ==")), "pricePerformanceTarget") unless @price_performance_target.nil? @publicly_accessible = publicly_accessible Jsii::Type.check_type(@publicly_accessible, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "publiclyAccessible") unless @publicly_accessible.nil? @recovery_point_id = recovery_point_id Jsii::Type.check_type(@recovery_point_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "recoveryPointId") unless @recovery_point_id.nil? @security_group_ids = security_group_ids Jsii::Type.check_type(@security_group_ids, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InVuaW9uIjp7InR5cGVzIjpbeyJwcmltaXRpdmUiOiJzdHJpbmcifSx7ImZxbiI6ImF3cy1jZGstbGliLmludGVyZmFjZXMuYXdzX2VjMi5JU2VjdXJpdHlHcm91cFJlZiJ9XX19LCJraW5kIjoiYXJyYXkifX0=")), "securityGroupIds") unless @security_group_ids.nil? @snapshot_arn = snapshot_arn Jsii::Type.check_type(@snapshot_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "snapshotArn") unless @snapshot_arn.nil? @snapshot_name = snapshot_name Jsii::Type.check_type(@snapshot_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "snapshotName") unless @snapshot_name.nil? @snapshot_owner_account = snapshot_owner_account Jsii::Type.check_type(@snapshot_owner_account, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "snapshotOwnerAccount") unless @snapshot_owner_account.nil? @subnet_ids = subnet_ids Jsii::Type.check_type(@subnet_ids, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InVuaW9uIjp7InR5cGVzIjpbeyJwcmltaXRpdmUiOiJzdHJpbmcifSx7ImZxbiI6ImF3cy1jZGstbGliLmludGVyZmFjZXMuYXdzX2VjMi5JU3VibmV0UmVmIn1dfX0sImtpbmQiOiJhcnJheSJ9fQ==")), "subnetIds") unless @subnet_ids.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? @track_name = track_name Jsii::Type.check_type(@track_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "trackName") unless @track_name.nil? @workgroup = workgroup.is_a?(Hash) ? ::AWSCDK::RedshiftServerless::CfnWorkgroup::WorkgroupProperty.new(**workgroup.transform_keys(&:to_sym)) : workgroup Jsii::Type.check_type(@workgroup, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19yZWRzaGlmdHNlcnZlcmxlc3MuQ2ZuV29ya2dyb3VwLldvcmtncm91cFByb3BlcnR5In1dfX0=")), "workgroup") unless @workgroup.nil? end |
Instance Attribute Details
#base_capacity ⇒ Numeric? (readonly)
The base compute capacity of the workgroup in Redshift Processing Units (RPUs).
75 76 77 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 75 def base_capacity @base_capacity end |
#config_parameters ⇒ AWSCDK::IResolvable, ... (readonly)
The key of the parameter.
The options are auto_mv , datestyle , enable_case_sensitive_identifier , enable_user_activity_logging , query_group , search_path , require_ssl , use_fips_ssl , and query monitoring metrics that let you define performance boundaries. For more information about query monitoring rules and available metrics, see Query monitoring metrics for Amazon Redshift Serverless .
82 83 84 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 82 def config_parameters @config_parameters end |
#enhanced_vpc_routing ⇒ Boolean, ... (readonly)
Default: - false
The value that specifies whether to enable enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC.
88 89 90 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 88 def enhanced_vpc_routing @enhanced_vpc_routing end |
#max_capacity ⇒ Numeric? (readonly)
The maximum data-warehouse capacity Amazon Redshift Serverless uses to serve queries.
The max capacity is specified in RPUs.
95 96 97 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 95 def max_capacity @max_capacity end |
#namespace_name ⇒ String? (readonly)
The namespace the workgroup is associated with.
100 101 102 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 100 def namespace_name @namespace_name end |
#port ⇒ Numeric? (readonly)
The custom port to use when connecting to a workgroup.
Valid port ranges are 5431-5455 and 8191-8215. The default is 5439.
107 108 109 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 107 def port @port end |
#price_performance_target ⇒ AWSCDK::IResolvable, ... (readonly)
An object that represents the price performance target settings for the workgroup.
112 113 114 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 112 def price_performance_target @price_performance_target end |
#publicly_accessible ⇒ Boolean, ... (readonly)
Default: - false
A value that specifies whether the workgroup can be accessible from a public network.
118 119 120 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 118 def publicly_accessible @publicly_accessible end |
#recovery_point_id ⇒ String? (readonly)
The recovery point id to restore from.
123 124 125 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 123 def recovery_point_id @recovery_point_id end |
#security_group_ids ⇒ Array<String, AWSCDK::Interfaces::AWSEC2::ISecurityGroupRef>? (readonly)
A list of security group IDs to associate with the workgroup.
128 129 130 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 128 def security_group_ids @security_group_ids end |
#snapshot_arn ⇒ String? (readonly)
The Amazon Resource Name (ARN) of the snapshot to restore from.
133 134 135 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 133 def snapshot_arn @snapshot_arn end |
#snapshot_name ⇒ String? (readonly)
The snapshot name to restore from.
138 139 140 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 138 def snapshot_name @snapshot_name end |
#snapshot_owner_account ⇒ String? (readonly)
The Amazon Web Services account that owns the snapshot.
143 144 145 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 143 def snapshot_owner_account @snapshot_owner_account end |
#subnet_ids ⇒ Array<String, AWSCDK::Interfaces::AWSEC2::ISubnetRef>? (readonly)
A list of subnet IDs the workgroup is associated with.
148 149 150 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 148 def subnet_ids @subnet_ids end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The map of the key-value pairs used to tag the workgroup.
153 154 155 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 153 def @tags end |
#track_name ⇒ String? (readonly)
An optional parameter for the name of the track for the workgroup.
If you don't provide a track name, the workgroup is assigned to the current track.
160 161 162 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 160 def track_name @track_name end |
#workgroup ⇒ AWSCDK::IResolvable, ... (readonly)
The collection of computing resources from which an endpoint is created.
165 166 167 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 165 def workgroup @workgroup end |
#workgroup_name ⇒ String (readonly)
The name of the workgroup.
70 71 72 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 70 def workgroup_name @workgroup_name end |
Class Method Details
.jsii_properties ⇒ Object
167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 167 def self.jsii_properties { :workgroup_name => "workgroupName", :base_capacity => "baseCapacity", :config_parameters => "configParameters", :enhanced_vpc_routing => "enhancedVpcRouting", :max_capacity => "maxCapacity", :namespace_name => "namespaceName", :port => "port", :price_performance_target => "pricePerformanceTarget", :publicly_accessible => "publiclyAccessible", :recovery_point_id => "recoveryPointId", :security_group_ids => "securityGroupIds", :snapshot_arn => "snapshotArn", :snapshot_name => "snapshotName", :snapshot_owner_account => "snapshotOwnerAccount", :subnet_ids => "subnetIds", :tags => "tags", :track_name => "trackName", :workgroup => "workgroup", } end |
Instance Method Details
#to_jsii ⇒ Object
190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 |
# File 'redshift_serverless/cfn_workgroup_props.rb', line 190 def to_jsii result = {} result.merge!({ "workgroupName" => @workgroup_name, "baseCapacity" => @base_capacity, "configParameters" => @config_parameters, "enhancedVpcRouting" => @enhanced_vpc_routing, "maxCapacity" => @max_capacity, "namespaceName" => @namespace_name, "port" => @port, "pricePerformanceTarget" => @price_performance_target, "publiclyAccessible" => @publicly_accessible, "recoveryPointId" => @recovery_point_id, "securityGroupIds" => @security_group_ids, "snapshotArn" => @snapshot_arn, "snapshotName" => @snapshot_name, "snapshotOwnerAccount" => @snapshot_owner_account, "subnetIds" => @subnet_ids, "tags" => @tags, "trackName" => @track_name, "workgroup" => @workgroup, }) result.compact end |