Interface OrcOutputFormatProps
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
OrcOutputFormatProps.Jsii$Proxy
Example:
OrcOutputFormat outputFormat = OrcOutputFormat.Builder.create()
.formatVersion(OrcFormatVersion.V0_11)
.blockSize(Size.mebibytes(256))
.compression(OrcCompression.NONE)
.bloomFilterColumns(List.of("columnA"))
.bloomFilterFalsePositiveProbability(0.1)
.dictionaryKeyThreshold(0.7)
.enablePadding(true)
.paddingTolerance(0.2)
.rowIndexStride(9000)
.stripeSize(Size.mebibytes(32))
.build();
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classA builder forOrcOutputFormatPropsstatic final classAn implementation forOrcOutputFormatProps -
Method Summary
Modifier and TypeMethodDescriptionstatic OrcOutputFormatProps.Builderbuilder()default SizeThe Hadoop Distributed File System (HDFS) block size.The column names for which you want Firehose to create bloom filters.default NumberThe Bloom filter false positive probability (FPP).default OrcCompressionThe compression code to use over data blocks.default NumberDetermines whether dictionary encoding should be applied to a column.default BooleanSet this totrueto indicate that you want stripes to be padded to the HDFS block boundaries.default OrcFormatVersionThe version of the ORC format to write.default NumberA number between 0 and 1 that defines the tolerance for block padding as a decimal fraction of stripe size.default NumberThe number of rows between index entries.default SizeThe number of bytes in each stripe.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getBlockSize
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.
Default: `Size.mebibytes(256)`
-
getBloomFilterColumns
The column names for which you want Firehose to create bloom filters.Default: no bloom filters are created
- See Also:
-
getBloomFilterFalsePositiveProbability
The Bloom filter false positive probability (FPP).The lower the FPP, the bigger the bloom filter.
Default: `0.05`
- See Also:
-
getCompression
The compression code to use over data blocks.The possible values are
NONE,SNAPPY, andZLIB. UseSNAPPYfor higher decompression speed. UseGZIPif the compression ratio is more important than speed.Default: `SNAPPY`
- See Also:
-
getDictionaryKeyThreshold
Determines whether dictionary encoding should be applied to a column.If the number of distinct keys (unique values) in a column exceeds this fraction of the total non-null rows in that column, dictionary encoding will be turned off for that specific column.
To turn off dictionary encoding, set this threshold to 0. To always use dictionary encoding, set this threshold to 1.
Default: `0.8`
- See Also:
-
getEnablePadding
Set this totrueto indicate that you want stripes to be padded to the HDFS block boundaries.This is useful if you intend to copy the data from Amazon S3 to HDFS before querying.
Default: `false`
- See Also:
-
getFormatVersion
The version of the ORC format to write.The possible values are
V0_11andV0_12.Default: `V0_12`
- See Also:
-
getPaddingTolerance
A number between 0 and 1 that defines the tolerance for block padding as a decimal fraction of stripe size.The default value is 0.05, which means 5 percent of stripe size.
For the default values of 64 MiB ORC stripes and 256 MiB HDFS blocks, the default block padding tolerance of 5 percent reserves a maximum of 3.2 MiB for padding within the 256 MiB block. In such a case, if the available size within the block is more than 3.2 MiB, a new, smaller stripe is inserted to fit within that space. This ensures that no stripe crosses block boundaries and causes remote reads within a node-local task.
Kinesis Data Firehose ignores this parameter when
EnablePaddingisfalse.Default: `0.05` if `enablePadding` is `true`
- See Also:
-
getRowIndexStride
The number of rows between index entries.Default: 10000
- See Also:
-
getStripeSize
The number of bytes in each stripe.The default is 64 MiB and the minimum is 8 MiB.
Default: `Size.mebibytes(64)`
- See Also:
-
builder
- Returns:
- a
OrcOutputFormatProps.BuilderofOrcOutputFormatProps
-