Class: AWSCDK::Glue::CfnPartition::StorageDescriptorProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
glue/cfn_partition.rb

Overview

Describes the physical storage of table data.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bucket_columns: nil, columns: nil, compressed: nil, input_format: nil, location: nil, number_of_buckets: nil, output_format: nil, parameters: nil, schema_reference: nil, serde_info: nil, skewed_info: nil, sort_columns: nil, stored_as_sub_directories: nil) ⇒ StorageDescriptorProperty

Returns a new instance of StorageDescriptorProperty.

Parameters:



934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
# File 'glue/cfn_partition.rb', line 934

def initialize(bucket_columns: nil, columns: nil, compressed: nil, input_format: nil, location: nil, number_of_buckets: nil, output_format: nil, parameters: nil, schema_reference: nil, serde_info: nil, skewed_info: nil, sort_columns: nil, stored_as_sub_directories: nil)
  @bucket_columns = bucket_columns
  Jsii::Type.check_type(@bucket_columns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "bucketColumns") unless @bucket_columns.nil?
  @columns = columns
  Jsii::Type.check_type(@columns, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZ2x1ZS5DZm5QYXJ0aXRpb24uQ29sdW1uUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "columns") unless @columns.nil?
  @compressed = compressed
  Jsii::Type.check_type(@compressed, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "compressed") unless @compressed.nil?
  @input_format = input_format
  Jsii::Type.check_type(@input_format, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "inputFormat") unless @input_format.nil?
  @location = location
  Jsii::Type.check_type(@location, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "location") unless @location.nil?
  @number_of_buckets = number_of_buckets
  Jsii::Type.check_type(@number_of_buckets, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "numberOfBuckets") unless @number_of_buckets.nil?
  @output_format = output_format
  Jsii::Type.check_type(@output_format, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "outputFormat") unless @output_format.nil?
  @parameters = parameters
  Jsii::Type.check_type(@parameters, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "parameters") unless @parameters.nil?
  @schema_reference = schema_reference.is_a?(Hash) ? ::AWSCDK::Glue::CfnPartition::SchemaReferenceProperty.new(**schema_reference.transform_keys(&:to_sym)) : schema_reference
  Jsii::Type.check_type(@schema_reference, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmblBhcnRpdGlvbi5TY2hlbWFSZWZlcmVuY2VQcm9wZXJ0eSJ9XX19")), "schemaReference") unless @schema_reference.nil?
  @serde_info = serde_info.is_a?(Hash) ? ::AWSCDK::Glue::CfnPartition::SerdeInfoProperty.new(**serde_info.transform_keys(&:to_sym)) : serde_info
  Jsii::Type.check_type(@serde_info, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmblBhcnRpdGlvbi5TZXJkZUluZm9Qcm9wZXJ0eSJ9XX19")), "serdeInfo") unless @serde_info.nil?
  @skewed_info = skewed_info.is_a?(Hash) ? ::AWSCDK::Glue::CfnPartition::SkewedInfoProperty.new(**skewed_info.transform_keys(&:to_sym)) : skewed_info
  Jsii::Type.check_type(@skewed_info, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmblBhcnRpdGlvbi5Ta2V3ZWRJbmZvUHJvcGVydHkifV19fQ==")), "skewedInfo") unless @skewed_info.nil?
  @sort_columns = sort_columns
  Jsii::Type.check_type(@sort_columns, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZ2x1ZS5DZm5QYXJ0aXRpb24uT3JkZXJQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "sortColumns") unless @sort_columns.nil?
  @stored_as_sub_directories = stored_as_sub_directories
  Jsii::Type.check_type(@stored_as_sub_directories, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "storedAsSubDirectories") unless @stored_as_sub_directories.nil?
end

Instance Attribute Details

#bucket_columnsArray<String>? (readonly)

A list of reducer grouping columns, clustering columns, and bucketing columns in the table.



967
968
969
# File 'glue/cfn_partition.rb', line 967

def bucket_columns
  @bucket_columns
end

#columnsAWSCDK::IResolvable, ... (readonly)

A list of the Columns in the table.



972
973
974
# File 'glue/cfn_partition.rb', line 972

def columns
  @columns
end

#compressedBoolean, ... (readonly)

True if the data in the table is compressed, or False if not.



977
978
979
# File 'glue/cfn_partition.rb', line 977

def compressed
  @compressed
end

#input_formatString? (readonly)

The input format: SequenceFileInputFormat (binary), or TextInputFormat , or a custom format.



982
983
984
# File 'glue/cfn_partition.rb', line 982

def input_format
  @input_format
end

#locationString? (readonly)

The physical location of the table.

By default, this takes the form of the warehouse location, followed by the database location in the warehouse, followed by the table name.



989
990
991
# File 'glue/cfn_partition.rb', line 989

def location
  @location
end

#number_of_bucketsNumeric? (readonly)

The number of buckets.

You must specify this property if the partition contains any dimension columns.



996
997
998
# File 'glue/cfn_partition.rb', line 996

def number_of_buckets
  @number_of_buckets
end

#output_formatString? (readonly)

The output format: SequenceFileOutputFormat (binary), or IgnoreKeyTextOutputFormat , or a custom format.



1001
1002
1003
# File 'glue/cfn_partition.rb', line 1001

def output_format
  @output_format
end

#parametersObject? (readonly)

The user-supplied properties in key-value form.



1006
1007
1008
# File 'glue/cfn_partition.rb', line 1006

def parameters
  @parameters
end

#schema_referenceAWSCDK::IResolvable, ... (readonly)

An object that references a schema stored in the AWS Glue Schema Registry.



1011
1012
1013
# File 'glue/cfn_partition.rb', line 1011

def schema_reference
  @schema_reference
end

#serde_infoAWSCDK::IResolvable, ... (readonly)

The serialization/deserialization (SerDe) information.



1016
1017
1018
# File 'glue/cfn_partition.rb', line 1016

def serde_info
  @serde_info
end

#skewed_infoAWSCDK::IResolvable, ... (readonly)

The information about values that appear frequently in a column (skewed values).



1021
1022
1023
# File 'glue/cfn_partition.rb', line 1021

def skewed_info
  @skewed_info
end

#sort_columnsAWSCDK::IResolvable, ... (readonly)

A list specifying the sort order of each bucket in the table.



1026
1027
1028
# File 'glue/cfn_partition.rb', line 1026

def sort_columns
  @sort_columns
end

#stored_as_sub_directoriesBoolean, ... (readonly)

True if the table data is stored in subdirectories, or False if not.



1031
1032
1033
# File 'glue/cfn_partition.rb', line 1031

def stored_as_sub_directories
  @stored_as_sub_directories
end

Class Method Details

.jsii_propertiesObject



1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
# File 'glue/cfn_partition.rb', line 1033

def self.jsii_properties
  {
    :bucket_columns => "bucketColumns",
    :columns => "columns",
    :compressed => "compressed",
    :input_format => "inputFormat",
    :location => "location",
    :number_of_buckets => "numberOfBuckets",
    :output_format => "outputFormat",
    :parameters => "parameters",
    :schema_reference => "schemaReference",
    :serde_info => "serdeInfo",
    :skewed_info => "skewedInfo",
    :sort_columns => "sortColumns",
    :stored_as_sub_directories => "storedAsSubDirectories",
  }
end

Instance Method Details

#to_jsiiObject



1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
# File 'glue/cfn_partition.rb', line 1051

def to_jsii
  result = {}
  result.merge!({
    "bucketColumns" => @bucket_columns,
    "columns" => @columns,
    "compressed" => @compressed,
    "inputFormat" => @input_format,
    "location" => @location,
    "numberOfBuckets" => @number_of_buckets,
    "outputFormat" => @output_format,
    "parameters" => @parameters,
    "schemaReference" => @schema_reference,
    "serdeInfo" => @serde_info,
    "skewedInfo" => @skewed_info,
    "sortColumns" => @sort_columns,
    "storedAsSubDirectories" => @stored_as_sub_directories,
  })
  result.compact
end