Class: AWSCDK::KinesisFirehose::ParquetOutputFormatProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::KinesisFirehose::ParquetOutputFormatProps
- Defined in:
- kinesis_firehose/parquet_output_format_props.rb
Overview
Props for Parquet output format for data record format conversion.
Instance Attribute Summary collapse
-
#block_size ⇒ AWSCDK::Size?
readonly
The Hadoop Distributed File System (HDFS) block size.
-
#compression ⇒ AWSCDK::KinesisFirehose::ParquetCompression?
readonly
The compression code to use over data blocks.
-
#enable_dictionary_compression ⇒ Boolean?
readonly
Indicates whether to enable dictionary compression.
-
#max_padding ⇒ AWSCDK::Size?
readonly
The maximum amount of padding to apply.
-
#page_size ⇒ AWSCDK::Size?
readonly
The Parquet page size.
-
#writer_version ⇒ AWSCDK::KinesisFirehose::ParquetWriterVersion?
readonly
Indicates the version of Parquet to output.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(block_size: nil, compression: nil, enable_dictionary_compression: nil, max_padding: nil, page_size: nil, writer_version: nil) ⇒ ParquetOutputFormatProps
constructor
A new instance of ParquetOutputFormatProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(block_size: nil, compression: nil, enable_dictionary_compression: nil, max_padding: nil, page_size: nil, writer_version: nil) ⇒ ParquetOutputFormatProps
Returns a new instance of ParquetOutputFormatProps.
13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'kinesis_firehose/parquet_output_format_props.rb', line 13 def initialize(block_size: nil, compression: nil, enable_dictionary_compression: nil, max_padding: nil, page_size: nil, writer_version: nil) @block_size = block_size Jsii::Type.check_type(@block_size, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TaXplIn0=")), "blockSize") unless @block_size.nil? @compression = compression Jsii::Type.check_type(@compression, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa2luZXNpc2ZpcmVob3NlLlBhcnF1ZXRDb21wcmVzc2lvbiJ9")), "compression") unless @compression.nil? @enable_dictionary_compression = enable_dictionary_compression Jsii::Type.check_type(@enable_dictionary_compression, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "enableDictionaryCompression") unless @enable_dictionary_compression.nil? @max_padding = max_padding Jsii::Type.check_type(@max_padding, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TaXplIn0=")), "maxPadding") unless @max_padding.nil? @page_size = page_size Jsii::Type.check_type(@page_size, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TaXplIn0=")), "pageSize") unless @page_size.nil? @writer_version = writer_version Jsii::Type.check_type(@writer_version, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa2luZXNpc2ZpcmVob3NlLlBhcnF1ZXRXcml0ZXJWZXJzaW9uIn0=")), "writerVersion") unless @writer_version.nil? end |
Instance Attribute Details
#block_size ⇒ AWSCDK::Size? (readonly)
Default: Size.mebibytes(256)
The Hadoop Distributed File System (HDFS) block size.
This is useful if you intend to copy the data from Amazon S3 to HDFS before querying. Firehose uses this value for padding calculations.
35 36 37 |
# File 'kinesis_firehose/parquet_output_format_props.rb', line 35 def block_size @block_size end |
#compression ⇒ AWSCDK::KinesisFirehose::ParquetCompression? (readonly)
Default: SNAPPY
The compression code to use over data blocks.
The possible values are UNCOMPRESSED , SNAPPY , and GZIP.
Use SNAPPY for higher decompression speed.
Use GZIP if the compression ratio is more important than speed.
45 46 47 |
# File 'kinesis_firehose/parquet_output_format_props.rb', line 45 def compression @compression end |
#enable_dictionary_compression ⇒ Boolean? (readonly)
Default: false
Indicates whether to enable dictionary compression.
51 52 53 |
# File 'kinesis_firehose/parquet_output_format_props.rb', line 51 def enable_dictionary_compression @enable_dictionary_compression end |
#max_padding ⇒ AWSCDK::Size? (readonly)
Default: no padding is applied
The maximum amount of padding to apply.
This is useful if you intend to copy the data from Amazon S3 to HDFS before querying.
59 60 61 |
# File 'kinesis_firehose/parquet_output_format_props.rb', line 59 def max_padding @max_padding end |
#page_size ⇒ AWSCDK::Size? (readonly)
Default: Size.mebibytes(1)
The Parquet page size.
Column chunks are divided into pages. A page is conceptually an indivisible unit (in terms of compression and encoding). The minimum value is 64 KiB and the default is 1 MiB.
67 68 69 |
# File 'kinesis_firehose/parquet_output_format_props.rb', line 67 def page_size @page_size end |
#writer_version ⇒ AWSCDK::KinesisFirehose::ParquetWriterVersion? (readonly)
Default: V1
Indicates the version of Parquet to output.
The possible values are V1 and V2
75 76 77 |
# File 'kinesis_firehose/parquet_output_format_props.rb', line 75 def writer_version @writer_version end |
Class Method Details
.jsii_properties ⇒ Object
77 78 79 80 81 82 83 84 85 86 |
# File 'kinesis_firehose/parquet_output_format_props.rb', line 77 def self.jsii_properties { :block_size => "blockSize", :compression => "compression", :enable_dictionary_compression => "enableDictionaryCompression", :max_padding => "maxPadding", :page_size => "pageSize", :writer_version => "writerVersion", } end |
Instance Method Details
#to_jsii ⇒ Object
88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'kinesis_firehose/parquet_output_format_props.rb', line 88 def to_jsii result = {} result.merge!({ "blockSize" => @block_size, "compression" => @compression, "enableDictionaryCompression" => @enable_dictionary_compression, "maxPadding" => @max_padding, "pageSize" => @page_size, "writerVersion" => @writer_version, }) result.compact end |