Interface CfnDeliveryStream.DataFormatConversionConfigurationProperty

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnDeliveryStream.DataFormatConversionConfigurationProperty.Jsii$Proxy
Enclosing class:
CfnDeliveryStream

@Stability(Stable) public static interface CfnDeliveryStream.DataFormatConversionConfigurationProperty extends software.amazon.jsii.JsiiSerializable
Specifies that you want Kinesis Data Firehose to convert data from the JSON format to the Parquet or ORC format before writing it to Amazon S3.

Kinesis Data Firehose uses the serializer and deserializer that you specify, in addition to the column information from the AWS Glue table, to deserialize your input data from JSON and then serialize it to the Parquet or ORC format. For more information, see Kinesis Data Firehose Record Format Conversion .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.kinesisfirehose.*;
 DataFormatConversionConfigurationProperty dataFormatConversionConfigurationProperty = DataFormatConversionConfigurationProperty.builder()
         .enabled(false)
         .inputFormatConfiguration(InputFormatConfigurationProperty.builder()
                 .deserializer(DeserializerProperty.builder()
                         .hiveJsonSerDe(HiveJsonSerDeProperty.builder()
                                 .timestampFormats(List.of("timestampFormats"))
                                 .build())
                         .openXJsonSerDe(OpenXJsonSerDeProperty.builder()
                                 .caseInsensitive(false)
                                 .columnToJsonKeyMappings(Map.of(
                                         "columnToJsonKeyMappingsKey", "columnToJsonKeyMappings"))
                                 .convertDotsInJsonKeysToUnderscores(false)
                                 .build())
                         .build())
                 .build())
         .outputFormatConfiguration(OutputFormatConfigurationProperty.builder()
                 .serializer(SerializerProperty.builder()
                         .orcSerDe(OrcSerDeProperty.builder()
                                 .blockSizeBytes(123)
                                 .bloomFilterColumns(List.of("bloomFilterColumns"))
                                 .bloomFilterFalsePositiveProbability(123)
                                 .compression("compression")
                                 .dictionaryKeyThreshold(123)
                                 .enablePadding(false)
                                 .formatVersion("formatVersion")
                                 .paddingTolerance(123)
                                 .rowIndexStride(123)
                                 .stripeSizeBytes(123)
                                 .build())
                         .parquetSerDe(ParquetSerDeProperty.builder()
                                 .blockSizeBytes(123)
                                 .compression("compression")
                                 .enableDictionaryCompression(false)
                                 .maxPaddingBytes(123)
                                 .pageSizeBytes(123)
                                 .writerVersion("writerVersion")
                                 .build())
                         .build())
                 .build())
         .schemaConfiguration(SchemaConfigurationProperty.builder()
                 .catalogId("catalogId")
                 .databaseName("databaseName")
                 .region("region")
                 .roleArn("roleArn")
                 .tableName("tableName")
                 .versionId("versionId")
                 .build())
         .build();
 

See Also: