Class: AWSCDK::Athena::CfnWorkGroup::WorkGroupConfigurationProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Athena::CfnWorkGroup::WorkGroupConfigurationProperty
- Defined in:
- athena/cfn_work_group.rb
Overview
The configuration of the workgroup, which includes the location in Amazon S3 where query results are stored, the encryption option, if any, used for query results, whether Amazon CloudWatch Metrics are enabled for the workgroup, and the limit for the amount of bytes scanned (cutoff) per query, if it is specified.
The EnforceWorkGroupConfiguration option determines whether workgroup settings override client-side query settings.
Instance Attribute Summary collapse
-
#additional_configuration ⇒ String?
readonly
Specifies a user defined JSON string that is passed to the session engine.
-
#bytes_scanned_cutoff_per_query ⇒ Numeric?
readonly
The upper limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan.
-
#customer_content_encryption_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Specifies the KMS key that is used to encrypt the user's data stores in Athena.
-
#enforce_work_group_configuration ⇒ Boolean, ...
readonly
If set to "true", the settings for the workgroup override client-side settings.
-
#engine_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The engine configuration for running queries.
-
#engine_version ⇒ AWSCDK::IResolvable, ...
readonly
The engine version that all queries running on the workgroup use.
-
#execution_role ⇒ String?
readonly
Role used to access user resources in an Athena for Apache Spark session.
-
#managed_query_results_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The configuration for storing results in Athena owned storage, which includes whether this feature is enabled;.
-
#monitoring_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Contains the configuration settings for managed log persistence, delivering logs to Amazon S3 buckets, Amazon CloudWatch log groups etc.
-
#publish_cloud_watch_metrics_enabled ⇒ Boolean, ...
readonly
Indicates that the Amazon CloudWatch metrics are enabled for the workgroup.
-
#requester_pays_enabled ⇒ Boolean, ...
readonly
If set to
true, allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries. -
#result_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Specifies the location in Amazon S3 where query results are stored and the encryption option, if any, used for query results.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(additional_configuration: nil, bytes_scanned_cutoff_per_query: nil, customer_content_encryption_configuration: nil, enforce_work_group_configuration: nil, engine_configuration: nil, engine_version: nil, execution_role: nil, managed_query_results_configuration: nil, monitoring_configuration: nil, publish_cloud_watch_metrics_enabled: nil, requester_pays_enabled: nil, result_configuration: nil) ⇒ WorkGroupConfigurationProperty
constructor
A new instance of WorkGroupConfigurationProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(additional_configuration: nil, bytes_scanned_cutoff_per_query: nil, customer_content_encryption_configuration: nil, enforce_work_group_configuration: nil, engine_configuration: nil, engine_version: nil, execution_role: nil, managed_query_results_configuration: nil, monitoring_configuration: nil, publish_cloud_watch_metrics_enabled: nil, requester_pays_enabled: nil, result_configuration: nil) ⇒ WorkGroupConfigurationProperty
Returns a new instance of WorkGroupConfigurationProperty.
1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 |
# File 'athena/cfn_work_group.rb', line 1430 def initialize(additional_configuration: nil, bytes_scanned_cutoff_per_query: nil, customer_content_encryption_configuration: nil, enforce_work_group_configuration: nil, engine_configuration: nil, engine_version: nil, execution_role: nil, managed_query_results_configuration: nil, monitoring_configuration: nil, publish_cloud_watch_metrics_enabled: nil, requester_pays_enabled: nil, result_configuration: nil) @additional_configuration = additional_configuration Jsii::Type.check_type(@additional_configuration, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "additionalConfiguration") unless @additional_configuration.nil? @bytes_scanned_cutoff_per_query = bytes_scanned_cutoff_per_query Jsii::Type.check_type(@bytes_scanned_cutoff_per_query, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "bytesScannedCutoffPerQuery") unless @bytes_scanned_cutoff_per_query.nil? @customer_content_encryption_configuration = customer_content_encryption_configuration.is_a?(Hash) ? ::AWSCDK::Athena::CfnWorkGroup::CustomerContentEncryptionConfigurationProperty.new(**customer_content_encryption_configuration.transform_keys(&:to_sym)) : customer_content_encryption_configuration Jsii::Type.check_type(@customer_content_encryption_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hdGhlbmEuQ2ZuV29ya0dyb3VwLkN1c3RvbWVyQ29udGVudEVuY3J5cHRpb25Db25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "customerContentEncryptionConfiguration") unless @customer_content_encryption_configuration.nil? @enforce_work_group_configuration = enforce_work_group_configuration Jsii::Type.check_type(@enforce_work_group_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enforceWorkGroupConfiguration") unless @enforce_work_group_configuration.nil? @engine_configuration = engine_configuration.is_a?(Hash) ? ::AWSCDK::Athena::CfnWorkGroup::EngineConfigurationProperty.new(**engine_configuration.transform_keys(&:to_sym)) : engine_configuration Jsii::Type.check_type(@engine_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hdGhlbmEuQ2ZuV29ya0dyb3VwLkVuZ2luZUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "engineConfiguration") unless @engine_configuration.nil? @engine_version = engine_version.is_a?(Hash) ? ::AWSCDK::Athena::CfnWorkGroup::EngineVersionProperty.new(**engine_version.transform_keys(&:to_sym)) : engine_version Jsii::Type.check_type(@engine_version, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hdGhlbmEuQ2ZuV29ya0dyb3VwLkVuZ2luZVZlcnNpb25Qcm9wZXJ0eSJ9XX19")), "engineVersion") unless @engine_version.nil? @execution_role = execution_role Jsii::Type.check_type(@execution_role, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "executionRole") unless @execution_role.nil? @managed_query_results_configuration = managed_query_results_configuration.is_a?(Hash) ? ::AWSCDK::Athena::CfnWorkGroup::ManagedQueryResultsConfigurationProperty.new(**managed_query_results_configuration.transform_keys(&:to_sym)) : managed_query_results_configuration Jsii::Type.check_type(@managed_query_results_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hdGhlbmEuQ2ZuV29ya0dyb3VwLk1hbmFnZWRRdWVyeVJlc3VsdHNDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "managedQueryResultsConfiguration") unless @managed_query_results_configuration.nil? @monitoring_configuration = monitoring_configuration.is_a?(Hash) ? ::AWSCDK::Athena::CfnWorkGroup::MonitoringConfigurationProperty.new(**monitoring_configuration.transform_keys(&:to_sym)) : monitoring_configuration Jsii::Type.check_type(@monitoring_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hdGhlbmEuQ2ZuV29ya0dyb3VwLk1vbml0b3JpbmdDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "monitoringConfiguration") unless @monitoring_configuration.nil? @publish_cloud_watch_metrics_enabled = publish_cloud_watch_metrics_enabled Jsii::Type.check_type(@publish_cloud_watch_metrics_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "publishCloudWatchMetricsEnabled") unless @publish_cloud_watch_metrics_enabled.nil? @requester_pays_enabled = requester_pays_enabled Jsii::Type.check_type(@requester_pays_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "requesterPaysEnabled") unless @requester_pays_enabled.nil? @result_configuration = result_configuration.is_a?(Hash) ? ::AWSCDK::Athena::CfnWorkGroup::ResultConfigurationProperty.new(**result_configuration.transform_keys(&:to_sym)) : result_configuration Jsii::Type.check_type(@result_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hdGhlbmEuQ2ZuV29ya0dyb3VwLlJlc3VsdENvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "resultConfiguration") unless @result_configuration.nil? end |
Instance Attribute Details
#additional_configuration ⇒ String? (readonly)
Specifies a user defined JSON string that is passed to the session engine.
1461 1462 1463 |
# File 'athena/cfn_work_group.rb', line 1461 def additional_configuration @additional_configuration end |
#bytes_scanned_cutoff_per_query ⇒ Numeric? (readonly)
The upper limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan.
No default is defined.
This property currently supports integer types. Support for long values is planned.
1470 1471 1472 |
# File 'athena/cfn_work_group.rb', line 1470 def bytes_scanned_cutoff_per_query @bytes_scanned_cutoff_per_query end |
#customer_content_encryption_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies the KMS key that is used to encrypt the user's data stores in Athena.
This setting does not apply to Athena SQL workgroups.
1477 1478 1479 |
# File 'athena/cfn_work_group.rb', line 1477 def customer_content_encryption_configuration @customer_content_encryption_configuration end |
#enforce_work_group_configuration ⇒ Boolean, ... (readonly)
If set to "true", the settings for the workgroup override client-side settings.
If set to "false", client-side settings are used. For more information, see Override client-side settings .
1484 1485 1486 |
# File 'athena/cfn_work_group.rb', line 1484 def enforce_work_group_configuration @enforce_work_group_configuration end |
#engine_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The engine configuration for running queries.
1489 1490 1491 |
# File 'athena/cfn_work_group.rb', line 1489 def engine_configuration @engine_configuration end |
#engine_version ⇒ AWSCDK::IResolvable, ... (readonly)
The engine version that all queries running on the workgroup use.
1494 1495 1496 |
# File 'athena/cfn_work_group.rb', line 1494 def engine_version @engine_version end |
#execution_role ⇒ String? (readonly)
Role used to access user resources in an Athena for Apache Spark session.
This property applies only to Spark-enabled workgroups in Athena.
1501 1502 1503 |
# File 'athena/cfn_work_group.rb', line 1501 def execution_role @execution_role end |
#managed_query_results_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The configuration for storing results in Athena owned storage, which includes whether this feature is enabled;
whether encryption configuration, if any, is used for encrypting query results.
1508 1509 1510 |
# File 'athena/cfn_work_group.rb', line 1508 def managed_query_results_configuration @managed_query_results_configuration end |
#monitoring_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Contains the configuration settings for managed log persistence, delivering logs to Amazon S3 buckets, Amazon CloudWatch log groups etc.
1513 1514 1515 |
# File 'athena/cfn_work_group.rb', line 1513 def monitoring_configuration @monitoring_configuration end |
#publish_cloud_watch_metrics_enabled ⇒ Boolean, ... (readonly)
Indicates that the Amazon CloudWatch metrics are enabled for the workgroup.
1518 1519 1520 |
# File 'athena/cfn_work_group.rb', line 1518 def publish_cloud_watch_metrics_enabled @publish_cloud_watch_metrics_enabled end |
#requester_pays_enabled ⇒ Boolean, ... (readonly)
If set to true , allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries.
If set to false , workgroup members cannot query data from Requester Pays buckets, and queries that retrieve data from Requester Pays buckets cause an error. The default is false . For more information about Requester Pays buckets, see Requester Pays Buckets in the Amazon Simple Storage Service Developer Guide .
1525 1526 1527 |
# File 'athena/cfn_work_group.rb', line 1525 def requester_pays_enabled @requester_pays_enabled end |
#result_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies the location in Amazon S3 where query results are stored and the encryption option, if any, used for query results.
For more information, see Work with query results and recent queries .
1532 1533 1534 |
# File 'athena/cfn_work_group.rb', line 1532 def result_configuration @result_configuration end |
Class Method Details
.jsii_properties ⇒ Object
1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 |
# File 'athena/cfn_work_group.rb', line 1534 def self.jsii_properties { :additional_configuration => "additionalConfiguration", :bytes_scanned_cutoff_per_query => "bytesScannedCutoffPerQuery", :customer_content_encryption_configuration => "customerContentEncryptionConfiguration", :enforce_work_group_configuration => "enforceWorkGroupConfiguration", :engine_configuration => "engineConfiguration", :engine_version => "engineVersion", :execution_role => "executionRole", :managed_query_results_configuration => "managedQueryResultsConfiguration", :monitoring_configuration => "monitoringConfiguration", :publish_cloud_watch_metrics_enabled => "publishCloudWatchMetricsEnabled", :requester_pays_enabled => "requesterPaysEnabled", :result_configuration => "resultConfiguration", } end |
Instance Method Details
#to_jsii ⇒ Object
1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 |
# File 'athena/cfn_work_group.rb', line 1551 def to_jsii result = {} result.merge!({ "additionalConfiguration" => @additional_configuration, "bytesScannedCutoffPerQuery" => @bytes_scanned_cutoff_per_query, "customerContentEncryptionConfiguration" => @customer_content_encryption_configuration, "enforceWorkGroupConfiguration" => @enforce_work_group_configuration, "engineConfiguration" => @engine_configuration, "engineVersion" => @engine_version, "executionRole" => @execution_role, "managedQueryResultsConfiguration" => @managed_query_results_configuration, "monitoringConfiguration" => @monitoring_configuration, "publishCloudWatchMetricsEnabled" => @publish_cloud_watch_metrics_enabled, "requesterPaysEnabled" => @requester_pays_enabled, "resultConfiguration" => @result_configuration, }) result.compact end |