Class: AWSCDK::Glue::CfnTableOptimizer::TableOptimizerConfigurationProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Glue::CfnTableOptimizer::TableOptimizerConfigurationProperty
- Defined in:
- glue/cfn_table_optimizer.rb
Overview
Specifies configuration details of a table optimizer.
Instance Attribute Summary collapse
-
#enabled ⇒ Boolean, AWSCDK::IResolvable
readonly
Whether the table optimization is enabled.
-
#orphan_file_deletion_configuration ⇒ AWSCDK::IResolvable, ...
readonly
OrphanFileDeletionConfigurationis a property that can be included within the TableOptimizer resource. -
#retention_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The configuration for a snapshot retention optimizer for Apache Iceberg tables.
-
#role_arn ⇒ String
readonly
A role passed by the caller which gives the service permission to update the resources associated with the optimizer on the caller's behalf.
-
#vpc_configuration ⇒ AWSCDK::IResolvable, ...
readonly
An object that describes the VPC configuration for a table optimizer.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(enabled:, role_arn:, orphan_file_deletion_configuration: nil, retention_configuration: nil, vpc_configuration: nil) ⇒ TableOptimizerConfigurationProperty
constructor
A new instance of TableOptimizerConfigurationProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(enabled:, role_arn:, orphan_file_deletion_configuration: nil, retention_configuration: nil, vpc_configuration: nil) ⇒ TableOptimizerConfigurationProperty
Returns a new instance of TableOptimizerConfigurationProperty.
717 718 719 720 721 722 723 724 725 726 727 728 |
# File 'glue/cfn_table_optimizer.rb', line 717 def initialize(enabled:, role_arn:, orphan_file_deletion_configuration: nil, retention_configuration: nil, vpc_configuration: nil) @enabled = enabled Jsii::Type.check_type(@enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enabled") @role_arn = role_arn Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") @orphan_file_deletion_configuration = orphan_file_deletion_configuration.is_a?(Hash) ? ::AWSCDK::Glue::CfnTableOptimizer::OrphanFileDeletionConfigurationProperty.new(**orphan_file_deletion_configuration.transform_keys(&:to_sym)) : orphan_file_deletion_configuration Jsii::Type.check_type(@orphan_file_deletion_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmblRhYmxlT3B0aW1pemVyLk9ycGhhbkZpbGVEZWxldGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "orphanFileDeletionConfiguration") unless @orphan_file_deletion_configuration.nil? @retention_configuration = retention_configuration.is_a?(Hash) ? ::AWSCDK::Glue::CfnTableOptimizer::RetentionConfigurationProperty.new(**retention_configuration.transform_keys(&:to_sym)) : retention_configuration Jsii::Type.check_type(@retention_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmblRhYmxlT3B0aW1pemVyLlJldGVudGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "retentionConfiguration") unless @retention_configuration.nil? @vpc_configuration = vpc_configuration.is_a?(Hash) ? ::AWSCDK::Glue::CfnTableOptimizer::VPCConfigurationProperty.new(**vpc_configuration.transform_keys(&:to_sym)) : vpc_configuration Jsii::Type.check_type(@vpc_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmblRhYmxlT3B0aW1pemVyLlZwY0NvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "vpcConfiguration") unless @vpc_configuration.nil? end |
Instance Attribute Details
#enabled ⇒ Boolean, AWSCDK::IResolvable (readonly)
Whether the table optimization is enabled.
734 735 736 |
# File 'glue/cfn_table_optimizer.rb', line 734 def enabled @enabled end |
#orphan_file_deletion_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
OrphanFileDeletionConfiguration is a property that can be included within the TableOptimizer resource.
It controls the automatic deletion of orphaned files - files that are not tracked by the table metadata, and older than the configured age limit.
746 747 748 |
# File 'glue/cfn_table_optimizer.rb', line 746 def orphan_file_deletion_configuration @orphan_file_deletion_configuration end |
#retention_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The configuration for a snapshot retention optimizer for Apache Iceberg tables.
751 752 753 |
# File 'glue/cfn_table_optimizer.rb', line 751 def retention_configuration @retention_configuration end |
#role_arn ⇒ String (readonly)
A role passed by the caller which gives the service permission to update the resources associated with the optimizer on the caller's behalf.
739 740 741 |
# File 'glue/cfn_table_optimizer.rb', line 739 def role_arn @role_arn end |
#vpc_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
An object that describes the VPC configuration for a table optimizer.
This configuration is necessary to perform optimization on tables that are in a customer VPC.
758 759 760 |
# File 'glue/cfn_table_optimizer.rb', line 758 def vpc_configuration @vpc_configuration end |
Class Method Details
.jsii_properties ⇒ Object
760 761 762 763 764 765 766 767 768 |
# File 'glue/cfn_table_optimizer.rb', line 760 def self.jsii_properties { :enabled => "enabled", :role_arn => "roleArn", :orphan_file_deletion_configuration => "orphanFileDeletionConfiguration", :retention_configuration => "retentionConfiguration", :vpc_configuration => "vpcConfiguration", } end |
Instance Method Details
#to_jsii ⇒ Object
770 771 772 773 774 775 776 777 778 779 780 |
# File 'glue/cfn_table_optimizer.rb', line 770 def to_jsii result = {} result.merge!({ "enabled" => @enabled, "roleArn" => @role_arn, "orphanFileDeletionConfiguration" => @orphan_file_deletion_configuration, "retentionConfiguration" => @retention_configuration, "vpcConfiguration" => @vpc_configuration, }) result.compact end |