Class: AWSCDK::Glue::CfnTableOptimizerProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Glue::CfnTableOptimizerProps
- Defined in:
- glue/cfn_table_optimizer_props.rb
Overview
Properties for defining a CfnTableOptimizer.
Instance Attribute Summary collapse
-
#catalog_id ⇒ String
readonly
The catalog ID of the table.
-
#database_name ⇒ String
readonly
The name of the database.
-
#table_name ⇒ String
readonly
The table name.
-
#table_optimizer_configuration ⇒ AWSCDK::IResolvable, AWSCDK::Glue::CfnTableOptimizer::TableOptimizerConfigurationProperty
readonly
Specifies configuration details of a table optimizer.
-
#type ⇒ String
readonly
The type of table optimizer.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(catalog_id:, database_name:, table_name:, table_optimizer_configuration:, type:) ⇒ CfnTableOptimizerProps
constructor
A new instance of CfnTableOptimizerProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(catalog_id:, database_name:, table_name:, table_optimizer_configuration:, type:) ⇒ CfnTableOptimizerProps
Returns a new instance of CfnTableOptimizerProps.
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'glue/cfn_table_optimizer_props.rb', line 14 def initialize(catalog_id:, database_name:, table_name:, table_optimizer_configuration:, type:) @catalog_id = catalog_id Jsii::Type.check_type(@catalog_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "catalogId") @database_name = database_name Jsii::Type.check_type(@database_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "databaseName") @table_name = table_name Jsii::Type.check_type(@table_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "tableName") @table_optimizer_configuration = table_optimizer_configuration.is_a?(Hash) ? ::AWSCDK::Glue::CfnTableOptimizer::TableOptimizerConfigurationProperty.new(**table_optimizer_configuration.transform_keys(&:to_sym)) : table_optimizer_configuration Jsii::Type.check_type(@table_optimizer_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmblRhYmxlT3B0aW1pemVyLlRhYmxlT3B0aW1pemVyQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "tableOptimizerConfiguration") @type = type Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type") end |
Instance Attribute Details
#catalog_id ⇒ String (readonly)
The catalog ID of the table.
31 32 33 |
# File 'glue/cfn_table_optimizer_props.rb', line 31 def catalog_id @catalog_id end |
#database_name ⇒ String (readonly)
The name of the database.
For Hive compatibility, this is folded to lowercase when it is stored.
38 39 40 |
# File 'glue/cfn_table_optimizer_props.rb', line 38 def database_name @database_name end |
#table_name ⇒ String (readonly)
The table name.
For Hive compatibility, this must be entirely lowercase.
45 46 47 |
# File 'glue/cfn_table_optimizer_props.rb', line 45 def table_name @table_name end |
#table_optimizer_configuration ⇒ AWSCDK::IResolvable, AWSCDK::Glue::CfnTableOptimizer::TableOptimizerConfigurationProperty (readonly)
Specifies configuration details of a table optimizer.
50 51 52 |
# File 'glue/cfn_table_optimizer_props.rb', line 50 def table_optimizer_configuration @table_optimizer_configuration end |
#type ⇒ String (readonly)
The type of table optimizer. The valid values are:.
- compaction - for managing compaction with a table optimizer.
- retention - for managing the retention of snapshot with a table optimizer.
- orphan_file_deletion - for managing the deletion of orphan files with a table optimizer.
59 60 61 |
# File 'glue/cfn_table_optimizer_props.rb', line 59 def type @type end |
Class Method Details
.jsii_properties ⇒ Object
61 62 63 64 65 66 67 68 69 |
# File 'glue/cfn_table_optimizer_props.rb', line 61 def self.jsii_properties { :catalog_id => "catalogId", :database_name => "databaseName", :table_name => "tableName", :table_optimizer_configuration => "tableOptimizerConfiguration", :type => "type", } end |
Instance Method Details
#to_jsii ⇒ Object
71 72 73 74 75 76 77 78 79 80 81 |
# File 'glue/cfn_table_optimizer_props.rb', line 71 def to_jsii result = {} result.merge!({ "catalogId" => @catalog_id, "databaseName" => @database_name, "tableName" => @table_name, "tableOptimizerConfiguration" => @table_optimizer_configuration, "type" => @type, }) result.compact end |